X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/ba84d96d923e2fc59e3fe933bccb8e54bbe7c3de..c82bda5269af866d4d6390cbe795a01fd3f9dc75:/misc.c diff --git a/misc.c b/misc.c index 6bb09c53..eb522256 100644 --- a/misc.c +++ b/misc.c @@ -67,3 +67,29 @@ void safefree(void *ptr) { fprintf(fp, "freeing null pointer - no action taken\n"); #endif } + +#ifdef DEBUG +static FILE *debug_fp = NULL; +static int debug_got_console = 0; + +void dprintf(char *fmt, ...) { + char buf[2048]; + DWORD dw; + va_list ap; + + if (!debug_got_console) { + AllocConsole(); + debug_got_console = 1; + } + if (!debug_fp) { + debug_fp = fopen("debug.log", "w"); + } + + va_start(ap, fmt); + vsprintf(buf, fmt, ap); + WriteFile(GetStdHandle(STD_OUTPUT_HANDLE), buf, strlen(buf), &dw, NULL); + fputs(buf, debug_fp); + fflush(debug_fp); + va_end(ap); +} +#endif