a few fix-ups for image size query:

- verify allocation
 - free allocated memory
 - push bitmap path to avoid quoting issues

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5513 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2008-02-02 13:20:04 +00:00
parent 38076c115a
commit 212d0ecd3b

View file

@ -275,14 +275,17 @@ Finish page (implemented using nsDialogs)
!ifndef MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEFINISHPAGE_BITMAP_NOSTRETCH
System::Call '*(i, i, i, i) i.s'
Pop $mui.FinishPage.Image.Rect
System::Call 'user32::GetClientRect(i $mui.FinishPage.Image, i $mui.FinishPage.Image.Rect)'
System::Call '*$mui.FinishPage.Image.Rect(i, i, i, i) i (, , .s, .s)'
Pop $mui.FinishPage.Image.Width
Pop $mui.FinishPage.Image.Height
System::Call 'user32::LoadImage(i 0, t "$PLUGINSDIR\modern-wizard.bmp", i ${IMAGE_BITMAP}, i $mui.FinishPage.Image.Width, i $mui.FinishPage.Image.Height, i ${LR_LOADFROMFILE}) i.s'
${If} $mui.FinishPage.Image.Rect != 0
System::Call 'user32::GetClientRect(i $mui.FinishPage.Image, i $mui.FinishPage.Image.Rect)'
System::Call '*$mui.FinishPage.Image.Rect(i, i, i .s, i .s)'
System::Free $mui.FinishPage.Image.Rect
Pop $mui.FinishPage.Image.Width
Pop $mui.FinishPage.Image.Height
${EndIf}
System::Call 'user32::LoadImage(i 0, t s, i ${IMAGE_BITMAP}, i $mui.FinishPage.Image.Width, i $mui.FinishPage.Image.Height, i ${LR_LOADFROMFILE}) i.s' "$PLUGINSDIR\modern-wizard.bmp"
!else
System::Call 'user32::LoadImage(i 0, t "$PLUGINSDIR\modern-wizard.bmp", i ${IMAGE_BITMAP}, i 0, i 0, i ${LR_LOADFROMFILE}) i.s'
!endif
System::Call 'user32::LoadImage(i 0, t s, i ${IMAGE_BITMAP}, i 0, i 0, i ${LR_LOADFROMFILE}) i.s' "$PLUGINSDIR\modern-wizard.bmp"
!endif
Pop $mui.FinishPage.Image.Bitmap
SendMessage $mui.FinishPage.Image ${STM_SETIMAGE} ${IMAGE_BITMAP} $mui.FinishPage.Image.Bitmap