_countof and swprintf fixes for VC6

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6045 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
anders_k 2010-03-30 17:50:08 +00:00
parent 34395604e8
commit 82d42b1159
13 changed files with 68 additions and 74 deletions

View file

@ -8,15 +8,10 @@
#include "defs.h"
#ifndef _countof
#ifndef __cplusplus
#define _countof(_Array) (sizeof(_Array) / sizeof(_Array[0]))
#ifdef _countof
#define COUNTOF _countof
#else
extern "C++" {
template <typename _CountofType,size_t _SizeOfArray> char (*__countof_helper(UNALIGNED _CountofType (&_Array)[_SizeOfArray]))[_SizeOfArray];
#define _countof(_Array) sizeof(*__countof_helper(_Array))
}
#endif
#define COUNTOF(a) (sizeof(a)/sizeof(a[0]))
#endif
int CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lp, LPARAM pData) {
@ -37,13 +32,13 @@ void __declspec(dllexport) SelectFolderDialog(HWND hwndParent, int string_size,
EXDLL_INIT();
if (popstringn(title, _countof(initial)))
if (popstringn(title, COUNTOF(initial)))
{
pushstring(_T("error"));
return;
}
if (popstringn(initial, _countof(title)))
if (popstringn(initial, COUNTOF(title)))
{
pushstring(_T("error"));
return;