Commit e62f96de by Edward Thomson

Allow NULL error message prefix when class=GITERR_OS

parent 59403f1f
...@@ -45,15 +45,19 @@ void giterr_set(int error_class, const char *string, ...) ...@@ -45,15 +45,19 @@ void giterr_set(int error_class, const char *string, ...)
#endif #endif
int error_code = (error_class == GITERR_OS) ? errno : 0; int error_code = (error_class == GITERR_OS) ? errno : 0;
va_start(arglist, string); if (string) {
git_buf_vprintf(&buf, string, arglist); va_start(arglist, string);
va_end(arglist); git_buf_vprintf(&buf, string, arglist);
va_end(arglist);
if (error_class == GITERR_OS)
git_buf_PUTS(&buf, ": ");
}
if (error_class == GITERR_OS) { if (error_class == GITERR_OS) {
#ifdef GIT_WIN32 #ifdef GIT_WIN32
char * win32_error = git_win32_get_error_message(win32_error_code); char * win32_error = git_win32_get_error_message(win32_error_code);
if (win32_error) { if (win32_error) {
git_buf_PUTS(&buf, ": ");
git_buf_puts(&buf, win32_error); git_buf_puts(&buf, win32_error);
git__free(win32_error); git__free(win32_error);
...@@ -61,10 +65,8 @@ void giterr_set(int error_class, const char *string, ...) ...@@ -61,10 +65,8 @@ void giterr_set(int error_class, const char *string, ...)
} }
else else
#endif #endif
if (error_code) { if (error_code)
git_buf_PUTS(&buf, ": ");
git_buf_puts(&buf, strerror(error_code)); git_buf_puts(&buf, strerror(error_code));
}
if (error_code) if (error_code)
errno = 0; errno = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment