size optimization

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4254 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2005-09-09 15:21:45 +00:00
parent 0bca3c8255
commit 8e3f7ed623
4 changed files with 11 additions and 7 deletions

View file

@ -842,9 +842,7 @@ static int NSISCALL ExecuteEntry(entry *entry_)
DWORD lExitCode; DWORD lExitCode;
while (WaitForSingleObject(hProc,100) == WAIT_TIMEOUT) while (WaitForSingleObject(hProc,100) == WAIT_TIMEOUT)
{ {
MSG msg; MessageLoop(WM_PAINT);
while (PeekMessage(&msg,NULL,WM_PAINT,WM_PAINT,PM_REMOVE))
DispatchMessage(&msg);
} }
GetExitCodeProcess(hProc, &lExitCode); GetExitCodeProcess(hProc, &lExitCode);

View file

@ -194,8 +194,7 @@ const char * NSISCALL loadHeaders(int cl_flags)
{ {
if (hwnd) if (hwnd)
{ {
MSG msg; MessageLoop(0);
while (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) DispatchMessage(&msg);
} }
else if (GetTickCount() > verify_time) else if (GetTickCount() > verify_time)
hwnd = CreateDialogParam( hwnd = CreateDialogParam(
@ -450,9 +449,8 @@ static int NSISCALL __ensuredata(int amount)
{ {
if (hwnd) if (hwnd)
{ {
MSG msg;
m_pos=m_length-(amount-(dbd_size-dbd_pos)); m_pos=m_length-(amount-(dbd_size-dbd_pos));
while (PeekMessage(&msg,NULL,0,0,PM_REMOVE)) DispatchMessage(&msg); MessageLoop(0);
} }
else if (GetTickCount() > verify_time) else if (GetTickCount() > verify_time)
{ {

View file

@ -796,3 +796,10 @@ void * NSISCALL myGetProcAddress(char *dll, char *func)
return GetProcAddress(hModule, func); return GetProcAddress(hModule, func);
} }
void NSISCALL MessageLoop(UINT uCheckedMsg)
{
MSG msg;
while (PeekMessage(&msg, NULL, uCheckedMsg, uCheckedMsg, PM_REMOVE))
DispatchMessage(&msg);
}

View file

@ -71,6 +71,7 @@ void NSISCALL MoveFileOnReboot(LPCTSTR pszExisting, LPCTSTR pszNew);
void NSISCALL mini_memcpy(void *out, const void *in, int len); void NSISCALL mini_memcpy(void *out, const void *in, int len);
void * NSISCALL myGetProcAddress(char *dll, char *func); void * NSISCALL myGetProcAddress(char *dll, char *func);
void NSISCALL MessageLoop(UINT uCheckedMsg);
// Turn a pair of chars into a word // Turn a pair of chars into a word
// Turn four chars into a dword // Turn four chars into a dword