64bit fixes and optimizations

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6486 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
anders_k 2014-05-19 22:03:09 +00:00
parent 0bcb8f40ed
commit 36deb84820
14 changed files with 74 additions and 51 deletions

View file

@ -7,6 +7,8 @@
HWND g_hwndParent;
#define isvalidnsisvarindex(varnum) ( ((unsigned int)(varnum)) < (__INST_LAST) )
TCHAR *AllocString()
{
return (TCHAR*) GlobalAlloc(GPTR,g_stringsize*sizeof(TCHAR));
@ -46,14 +48,14 @@ TCHAR *system_pushstring(TCHAR *str)
TCHAR *system_getuservariable(int varnum)
{
if (varnum < 0 || varnum >= __INST_LAST) return AllocString();
if (!isvalidnsisvarindex(varnum)) return AllocString();
return AllocStr(g_variables+varnum*g_stringsize);
}
TCHAR *system_setuservariable(int varnum, TCHAR *var)
{
if (var != NULL && varnum >= 0 && varnum < __INST_LAST) {
lstrcpy (g_variables + varnum*g_stringsize, var);
if (var && isvalidnsisvarindex(varnum)) {
lstrcpy(g_variables + varnum*g_stringsize, var);
}
return var;
}