From ea055f14654e3fe4580a71ce7490adb11ce0809d Mon Sep 17 00:00:00 2001 From: Morten Vassvik Date: Thu, 5 Jul 2018 15:46:11 +0200 Subject: [PATCH] Surrounded explicit link paths (.a and .so) and the exe path for 'odin run' in quotes, so that it works in paths containing characters that must be escaped (like spaces) --- src/main.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 9559a3dc6..25ebc9dea 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -992,12 +992,12 @@ int main(int arg_count, char **arg_ptr) { // the system library paths for the library file). if (string_ends_with(lib, str_lit(".a"))) { // static libs, absolute full path relative to the file in which the lib was imported from - lib_str = gb_string_append_fmt(lib_str, " -l:%.*s ", LIT(lib)); + lib_str = gb_string_append_fmt(lib_str, " -l:\"%.*s\" ", LIT(lib)); } else if (string_ends_with(lib, str_lit(".so"))) { // dynamic lib, relative path to executable // NOTE(vassvik): it is the user's responsibility to make sure the shared library files are visible // at runtimeto the executable - lib_str = gb_string_append_fmt(lib_str, " -l:%s/%.*s ", cwd, LIT(lib)); + lib_str = gb_string_append_fmt(lib_str, " -l:\"%s/%.*s\" ", cwd, LIT(lib)); } else { // dynamic or static system lib, just link regularly searching system library paths lib_str = gb_string_append_fmt(lib_str, " -l%.*s ", LIT(lib)); @@ -1085,7 +1085,7 @@ int main(int arg_count, char **arg_ptr) { remove_temp_files(output_base); if (run_output) { - system_exec_command_line_app("odin run", false, "%.*s", LIT(output_base)); + system_exec_command_line_app("odin run", false, "\"%.*s\"", LIT(output_base)); } #endif #endif