Add git version defines
[git-cheetah/kirill.git] / common / debug.c
blobd6ec75f9bb60b61047d4470974a77b38ae27aec1
1 #include "git-compat-util.h"
2 #include "systeminfo.h"
3 #include "debug.h"
5 static char debug_git_file[MAX_PATH];
6 static FILE * debug_git_fd = NULL;
8 void debug_git_set_file(const char * filename)
10 if (debug_git_fd)
12 fclose(debug_git_fd);
13 debug_git_fd = NULL;
16 strncpy(debug_git_file, filename, MAX_PATH);
17 debug_git_file[MAX_PATH-1] = '\0';
19 debug_git_fd = fopen(debug_git_file, "a+");
22 void debug_git(char * format, ...)
24 if (!debug_git_fd)
26 debug_git_set_file(DEFAULT_DEBUG_GIT_FILE);
29 /* Check again in case the above debug_git_set_file failed. */
30 if (debug_git_fd)
32 va_list params;
33 char buffer[1024];
34 int length = 0;
36 va_start(params, format);
37 length = vsnprintf(buffer, sizeof(buffer), format, params);
38 va_end(params);
39 fwrite(buffer, sizeof(char), length, debug_git_fd);
40 fputc('\n', debug_git_fd);
41 fflush(debug_git_fd);
45 void debug_git_mbox(char *format, ...)
47 va_list params;
48 char buffer[1024];
50 va_start(params, format);
51 vsnprintf(buffer, sizeof(buffer), format, params);
52 va_end(params);
53 message_box(buffer);