diff --git a/.gitignore b/.gitignore index 4dc4215..35b23f9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ nob nob.old nob.exe +nob.exe.old build/ \ No newline at end of file diff --git a/nob.h b/nob.h index 4f752af..6d1fcbc 100644 --- a/nob.h +++ b/nob.h @@ -100,7 +100,9 @@ #ifndef NOB_H_ #define NOB_H_ #ifdef _WIN32 -#define _CRT_SECURE_NO_WARNINGS (1) +#ifndef _CRT_SECURE_NO_WARNINGS + #define _CRT_SECURE_NO_WARNINGS (1) +#endif #endif #ifndef NOBDEF @@ -1166,10 +1168,11 @@ static Nob_Proc nob__cmd_start_process(Nob_Cmd cmd, Nob_Fd *fdin, Nob_Fd *fdout, PROCESS_INFORMATION piProcInfo; ZeroMemory(&piProcInfo, sizeof(PROCESS_INFORMATION)); - nob__win32_cmd_quote(cmd, &sb); - nob_sb_append_null(&sb); - BOOL bSuccess = CreateProcessA(NULL, sb.items, NULL, NULL, TRUE, 0, NULL, NULL, &siStartInfo, &piProcInfo); - nob_sb_free(sb); + Nob_String_Builder quoted = {0}; + nob__win32_cmd_quote(cmd, "ed); + nob_sb_append_null("ed); + BOOL bSuccess = CreateProcessA(NULL, quoted.items, NULL, NULL, TRUE, 0, NULL, NULL, &siStartInfo, &piProcInfo); + nob_sb_free(quoted); if (!bSuccess) { nob_log(NOB_ERROR, "Could not create child process for %s: %s", cmd.items[0], nob_win32_error_message(GetLastError())); diff --git a/tests/win32_error.c b/tests/win32_error.c index cc86920..3b0c78b 100644 --- a/tests/win32_error.c +++ b/tests/win32_error.c @@ -4,6 +4,6 @@ int main(void) { nob_log(NOB_ERROR, "First 100 Win32 API Errors:"); for (DWORD i = 0; i < 100; i++) - nob_log(NOB_ERROR, "%lu (0x%X): \"%s\"", i, i, nob_win32_error_message(i)); + nob_log(NOB_ERROR, "%lu (0x%lX): \"%s\"", i, i, nob_win32_error_message(i)); return 0; }