\r
FILE * LogFile=NULL;\r
\r
-\r
// functions\r
\r
// util_init()\r
// my_log()\r
\r
void my_log(const char format[], ...) {\r
+ \r
+ char string[FormatBufferSize];\r
+ \r
+ ASSERT(format!=NULL);\r
\r
- va_list ap;\r
-\r
- ASSERT(format!=NULL);\r
+// format\r
\r
- if (LogFile != NULL) {\r
- fprintf(LogFile,"%.3f ",now_real());\r
- va_start(ap,format);\r
+ CONSTRUCT_ARG_STRING(format,string);\r
+ \r
\r
- vfprintf(LogFile,format,ap);\r
- va_end(ap);\r
+ if (LogFile != NULL) {\r
+ fprintf(LogFile,"%.3f %s",now_real(),string);\r
#ifdef _WIN32\r
- fflush(LogFile);\r
+ fflush(LogFile);\r
#endif\r
- }\r
+ }\r
}\r
\r
// my_fatal()\r
\r
void my_fatal(const char format[], ...) {\r
\r
- va_list ap;\r
+ char string[FormatBufferSize];\r
\r
- ASSERT(format!=NULL);\r
+ ASSERT(format!=NULL);\r
\r
- va_start(ap,format);\r
+// format\r
\r
- vfprintf(stderr,format,ap);\r
- if (LogFile != NULL) vfprintf(LogFile,format,ap);\r
+ CONSTRUCT_ARG_STRING(format,string);\r
+ \r
+ fprintf(stderr,format,string);\r
+ if (LogFile != NULL) fprintf(LogFile,format,&string);\r
\r
- va_end(ap);\r
- if (Error) { // recursive error\r
- my_log("POLYGLOT *** RECURSIVE ERROR ***\n");\r
- exit(EXIT_FAILURE);\r
- // abort();\r
- } else {\r
- Error = TRUE;\r
- quit();\r
- }\r
+ if (Error) { // recursive error\r
+ my_log("POLYGLOT *** RECURSIVE ERROR ***\n");\r
+ exit(EXIT_FAILURE);\r
+ // abort();\r
+ } else {\r
+ Error = TRUE;\r
+ quit();\r
+ }\r
}\r
\r
// my_file_read_line()\r
}\r
\r
\r
-char * my_getcwd(char *buf, size_t size){\r
-#ifdef _WIN32\r
- return _getcwd(buf,size);\r
-#else\r
- return getcwd(buf,size);\r
-#endif\r
-}\r
\r
-int my_chdir (const char *path){\r
- ASSERT(path!=NULL);\r
-#ifdef _WIN32\r
- return _chdir(path);\r
-#else\r
- return chdir(path);\r
-#endif\r
-}\r