From 4c62b4760e157c0c3130e16aedd799829f9fa55a Mon Sep 17 00:00:00 2001 From: anders_k Date: Mon, 15 Nov 2010 18:02:29 +0000 Subject: [PATCH] VC6 fixes when using SYSTEM_LOG_DEBUG git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6130 212acab6-be3b-0410-9dea-997c60f758d6 --- Contrib/System/Source/System.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Contrib/System/Source/System.c b/Contrib/System/Source/System.c index b18c5eea..adcc9be0 100644 --- a/Contrib/System/Source/System.c +++ b/Contrib/System/Source/System.c @@ -72,9 +72,13 @@ TCHAR *GetResultStr(SystemProc *proc) #ifdef SYSTEM_LOG_DEBUG +#ifndef COUNTOF +#define COUNTOF(a) ( sizeof(a) / (a[0]) ) +#endif + // System log debugging turned on -#define SYSTEM_LOG_ADD(a) { register int _len = lstrlen(syslogbuf); lstrcpyn(syslogbuf + _len, a, COUNTOF(syslogbuf) - _len); } -#define SYSTEM_LOG_POST { SYSTEM_LOG_ADD(_T("\n")); WriteToLog(syslogbuf); *syslogbuf = 0; } +#define SYSTEM_LOG_ADD(a) do{ register int _len = lstrlen(syslogbuf); lstrcpyn(syslogbuf + _len, a, COUNTOF(syslogbuf) - _len); }while(0) +#define SYSTEM_LOG_POST do{ SYSTEM_LOG_ADD(_T("\n")); WriteToLog(syslogbuf); *syslogbuf = 0; }while(0) HANDLE logfile = NULL; TCHAR syslogbuf[4096] = _T("");