Couldn’t find if this is already known, but I have a 3 monitor set-up, whenever the Gradient Edit menu gets called to open with Pro Motion NG displayed on a monitor that isn’t set as the primary monitor for Windows 10 it will send a Internal Error like the program has crashed. If you simply click continue application the program will continue like normal with the Gradient Edit menu working fine until it needs to be opened again which results in the same error.
I tried this with the Stable version and it doesn’t happen there, but I tested it on Beta 10 and Beta 9 which does make it happen.
Here’s some of the bug report it generates for me:
exception class : EAccessViolation
exception message : Access violation at address 00000000011D0BC4 in module 'pmotion.exe'. Read of address 000000000000000C.
main thread ($e14):
011d0bc4 +004 pmotion.exe apGradient 602 +1 TGradient.getLength
014612b1 +101 pmotion.exe apDlgEditGradient 592 +11 TDlgEditGradient.renderGradientSlots
0146151f +00f pmotion.exe apDlgEditGradient 619 +1 TDlgEditGradient.updateGradientDisplays
01460a58 +008 pmotion.exe apDlgEditGradient 482 +1 TDlgEditGradient.FormResize
00e01330 +020 pmotion.exe Vcl.Controls 5781 +1 TControl.Resize
00e0df9f +09f pmotion.exe Vcl.Controls 11092 +20 TWinControl.WMSize
00f3ecac +02c pmotion.exe Vcl.Forms 3616 +3 TScrollingWinControl.WMSize
00b502f2 +042 pmotion.exe System 18822 +10 TObject.Dispatch
00e051dd +36d pmotion.exe Vcl.Controls 7548 +91 TControl.WndProc
00e0c64b +97b pmotion.exe Vcl.Controls 10583 +170 TWinControl.WndProc
00f427ac +9dc pmotion.exe Vcl.Forms 4979 +222 TCustomForm.WndProc
00e0b7ea +02a pmotion.exe Vcl.Controls 10271 +3 TWinControl.MainWndProc
00d2d173 +023 pmotion.exe System.Classes 18392 +8 StdWndProc
7fff23e1 +089 USER32.dll CallWindowProcW
00e0c7bc +10c pmotion.exe Vcl.Controls 10624 +30 TWinControl.DefaultHandler
00f45d2e +06e pmotion.exe Vcl.Forms 6293 +11 TCustomForm.DefaultHandler
00e061a6 +016 pmotion.exe Vcl.Controls 7863 +1 TControl.WMWindowPosChanged
00e0de58 +0e8 pmotion.exe Vcl.Controls 11042 +12 TWinControl.WMWindowPosChanged
00f48242 +012 pmotion.exe Vcl.Forms 7217 +1 TCustomForm.WMWindowPosChanged
00b502f2 +042 pmotion.exe System 18822 +10 TObject.Dispatch
00e051dd +36d pmotion.exe Vcl.Controls 7548 +91 TControl.WndProc
00e0c64b +97b pmotion.exe Vcl.Controls 10583 +170 TWinControl.WndProc
00f427ac +9dc pmotion.exe Vcl.Forms 4979 +222 TCustomForm.WndProc
00e0b7ea +02a pmotion.exe Vcl.Controls 10271 +3 TWinControl.MainWndProc
00d2d173 +023 pmotion.exe System.Classes 18392 +8 StdWndProc
7fff253f +01f ntdll.dll KiUserCallbackDispatcher
7fff23e2 +04f USER32.dll SetWindowRgn
00f6406b +08b pmotion.exe Vcl.Forms 18088 +11 TFormStyleHook.ChangeSize
00f645d7 +267 pmotion.exe Vcl.Forms 18222 +57 TFormStyleHook.WMWindowPosChanging
00b502f2 +042 pmotion.exe System 18822 +10 TObject.Dispatch
00ef9575 +1b5 pmotion.exe Vcl.Themes 7689 +38 TStyleHook.WndProc
00ef98c2 +012 pmotion.exe Vcl.Themes 7788 +1 TMouseTrackControlStyleHook.WndProc
00f64a18 +088 pmotion.exe Vcl.Forms 18289 +14 TFormStyleHook.WndProc
00ef88d9 +089 pmotion.exe Vcl.Themes 7394 +20 TStyleHook.HandleMessage
00f5eb13 +013 pmotion.exe Vcl.Forms 16475 +1 TFormStyleHook.HandleMessage
00fe4050 +0c0 pmotion.exe Vcl.Styles 3601 +22 TStyleEngine.HandleMessage
00ef3bec +07c pmotion.exe Vcl.Themes 5858 +11 TStyleManager.HandleMessage
00e099a4 +024 pmotion.exe Vcl.Controls 9412 +1 TWinControl.DoHandleStyleMessage
00e0bd8d +0bd pmotion.exe Vcl.Controls 10414 +1 TWinControl.WndProc
00f427ac +9dc pmotion.exe Vcl.Forms 4979 +222 TCustomForm.WndProc
00e0b7ea +02a pmotion.exe Vcl.Controls 10271 +3 TWinControl.MainWndProc
00d2d173 +023 pmotion.exe System.Classes 18392 +8 StdWndProc
7fff253f +01f ntdll.dll KiUserCallbackDispatcher
00e10325 +085 pmotion.exe Vcl.Controls 12362 +5 TWinControl.SetBounds
00f44946 +306 pmotion.exe Vcl.Forms 5800 +28 TCustomForm.SetWindowToMonitor
00f41b0d +04d pmotion.exe Vcl.Forms 4668 +8 TCustomForm.SetVisible
00f4a11d +00d pmotion.exe Vcl.Forms 7898 +1 TCustomForm.Show
00f4a458 +1e8 pmotion.exe Vcl.Forms 7971 +30 TCustomForm.ShowModal
0165fe7c +0cc pmotion.exe apDlgGradientSelect 125 +9 TDlgGradientSelect.btnAddClick
00e058e1 +0a1 pmotion.exe Vcl.Controls 7664 +9 TControl.Click
00e40166 +026 pmotion.exe Vcl.StdCtrls 5877 +3 TCustomButton.Click
01020c48 +0c8 pmotion.exe Vcl.Buttons 2423 +26 TBitBtn.Click
00e41a12 +022 pmotion.exe Vcl.StdCtrls 6510 +1 TCustomButton.CNCommand
00b502f2 +042 pmotion.exe System 18822 +10 TObject.Dispatch
00e051dd +36d pmotion.exe Vcl.Controls 7548 +91 TControl.WndProc
00e0c64b +97b pmotion.exe Vcl.Controls 10583 +170 TWinControl.WndProc
00e3fb80 +090 pmotion.exe Vcl.StdCtrls 5710 +13 TButtonControl.WndProc
00e04cd0 +030 pmotion.exe Vcl.Controls 7326 +10 TControl.Perform
00e0c829 +029 pmotion.exe Vcl.Controls 10652 +12 DoControlMsg
00e0da03 +013 pmotion.exe Vcl.Controls 10930 +1 TWinControl.WMCommand
00b502f2 +042 pmotion.exe System 18822 +10 TObject.Dispatch
00e051dd +36d pmotion.exe Vcl.Controls 7548 +91 TControl.WndProc
00e0c64b +97b pmotion.exe Vcl.Controls 10583 +170 TWinControl.WndProc
00e0b7ea +02a pmotion.exe Vcl.Controls 10271 +3 TWinControl.MainWndProc
00d2d173 +023 pmotion.exe System.Classes 18392 +8 StdWndProc
7fff23e1 +0d5 USER32.dll SendMessageW
00e50bef +04f pmotion.exe Vcl.StdCtrls 11594 +4 TButtonStyleHook.DoClick
00e510c6 +036 pmotion.exe Vcl.StdCtrls 11756 +8 TButtonStyleHook.WMLButtonUp
00b502f2 +042 pmotion.exe System 18822 +10 TObject.Dispatch
00ef9575 +1b5 pmotion.exe Vcl.Themes 7689 +38 TStyleHook.WndProc
00ef98c2 +012 pmotion.exe Vcl.Themes 7788 +1 TMouseTrackControlStyleHook.WndProc
00e50ce2 +092 pmotion.exe Vcl.StdCtrls 11631 +21 TButtonStyleHook.WndProc
00ef88d9 +089 pmotion.exe Vcl.Themes 7394 +20 TStyleHook.HandleMessage
00fe4050 +0c0 pmotion.exe Vcl.Styles 3601 +22 TStyleEngine.HandleMessage
00ef3bec +07c pmotion.exe Vcl.Themes 5858 +11 TStyleManager.HandleMessage
00e099a4 +024 pmotion.exe Vcl.Controls 9412 +1 TWinControl.DoHandleStyleMessage
00e0bd8d +0bd pmotion.exe Vcl.Controls 10414 +1 TWinControl.WndProc
00e3fb80 +090 pmotion.exe Vcl.StdCtrls 5710 +13 TButtonControl.WndProc
00e0b7ea +02a pmotion.exe Vcl.Controls 10271 +3 TWinControl.MainWndProc
00d2d173 +023 pmotion.exe System.Classes 18392 +8 StdWndProc
7fff23e1 +254 USER32.dll DispatchMessageW
00f5155e +12e pmotion.exe Vcl.Forms 11336 +23 TApplication.ProcessMessage
00f515d3 +013 pmotion.exe Vcl.Forms 11366 +1 TApplication.HandleMessage
00f4a51f +2af pmotion.exe Vcl.Forms 7991 +50 TCustomForm.ShowModal
016601ac +03c pmotion.exe apDlgGradientSelect 195 +4 TDlgGradientSelect.showModal
016eb687 +057 pmotion.exe apMainForm 11414 +4 TMainForm.btnSelectGradientClick
00e058e1 +0a1 pmotion.exe Vcl.Controls 7664 +9 TControl.Click
0121bbb4 +054 pmotion.exe JvButton TJvCustomGraphicButton.Click
00e0601d +0ad pmotion.exe Vcl.Controls 7803 +7 TControl.WMLButtonUp
00b502f2 +042 pmotion.exe System 18822 +10 TObject.Dispatch
00e051dd +36d pmotion.exe Vcl.Controls 7548 +91 TControl.WndProc
01217a66 +296 pmotion.exe JvExControls TJvExGraphicControl.WndProc
00e04cd0 +030 pmotion.exe Vcl.Controls 7326 +10 TControl.Perform
00e0bb5b +0cb pmotion.exe Vcl.Controls 10348 +15 TWinControl.IsControlMouseMsg
00e0c3ff +72f pmotion.exe Vcl.Controls 10525 +112 TWinControl.WndProc
00e0b7ea +02a pmotion.exe Vcl.Controls 10271 +3 TWinControl.MainWndProc
00d2d173 +023 pmotion.exe System.Classes 18392 +8 StdWndProc
7fff23e1 +254 USER32.dll DispatchMessageW
00f5155e +12e pmotion.exe Vcl.Forms 11336 +23 TApplication.ProcessMessage
00f515d3 +013 pmotion.exe Vcl.Forms 11366 +1 TApplication.HandleMessage
00f51a2a +0ea pmotion.exe Vcl.Forms 11505 +27 TApplication.Run
017eb222 +1f2 pmotion.exe Pmotion 1121 +58 initialization
7fff2486 +00e KERNEL32.DLL BaseThreadInitThunk
7fff253a +01b ntdll.dll RtlUserThreadStart
thread $578:
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $2ed4:
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $1f58:
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $1ca4:
7fff22e6 +e9 KERNELBASE.dll WaitForMultipleObjectsEx
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $1ddc:
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $1e20:
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $1d44:
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $20bc:
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $1f9c:
7fff22e6 +e9 KERNELBASE.dll WaitForMultipleObjectsEx
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $1664: <priority:-15>
7fff22e3 +87 KERNELBASE.dll WaitForSingleObjectEx
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $468: <priority:-15>
7fff22e3 +87 KERNELBASE.dll WaitForSingleObjectEx
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $650: <priority:-15>
7fff22e3 +87 KERNELBASE.dll WaitForSingleObjectEx
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $2680: <priority:-15>
7fff22e3 +87 KERNELBASE.dll WaitForSingleObjectEx
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $2628:
7fff22e3 +87 KERNELBASE.dll WaitForSingleObjectEx
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
thread $3600:
7fff22e6 +e9 KERNELBASE.dll WaitForMultipleObjectsEx
00c4f159 +49 pmotion.exe madExcept ThreadExceptFrame
7fff2486 +0e KERNEL32.DLL BaseThreadInitThunk
7fff253a +1b ntdll.dll RtlUserThreadStart
cpu registers:
rax = 0000024555556e00
rbx = 0000000000000000
rcx = 0000000000000000
rdx = 0000024555556e00
rsi = 00000245554d0390
rdi = 0000024555556e00
rip = 00000000011d0bc4
rsp = 000000620effbbd0
rbp = 000000620effbbd0
r8 = 0000000000000220
r9 = 0000000000000044
r10 = 000000000000000d
r11 = 000000620effbaa0
r12 = 0000000000000000
r13 = 0000000000000005
r14 = 0000000000000000
r15 = 0000000000000000
stack dump:
620effbbd0 00 00 00 00 00 00 00 00 - b0 f7 7f 0f 62 00 00 00 ............b...
620effbbe0 00 bf b7 49 45 02 00 00 - 00 00 00 00 00 00 00 00 ...IE...........
620effbbf0 00 00 00 00 22 00 00 00 - 00 00 00 00 00 00 00 00 ...."...........
620effbc00 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................
620effbc10 00 00 00 00 22 00 00 00 - 00 00 00 00 00 00 00 00 ...."...........
620effbc20 00 00 00 00 00 00 00 00 - 70 61 c0 47 00 00 00 00 ........pa.G....
620effbc30 c0 bc ff 0e ff ff ff ff - 00 12 98 49 45 02 00 00 ...........IE...
620effbc40 50 da eb 00 00 00 00 00 - 9a d8 eb 00 00 00 00 00 P...............
620effbc50 00 00 00 00 00 00 00 00 - d2 43 c1 00 00 00 00 00 .........C......
620effbc60 0b 00 00 00 00 00 00 00 - d0 0c 0d 46 00 00 00 00 ...........F....
620effbc70 00 00 00 00 00 00 00 00 - 50 bc ff 0e 62 00 00 00 ........P...b...
620effbc80 20 20 0d 46 45 02 00 00 - 01 00 00 00 00 00 00 00 .FE...........
620effbc90 a0 bc ff 0e 62 00 00 00 - 76 d1 d2 00 00 00 00 00 ....b...v.......
620effbca0 60 46 75 49 45 02 00 00 - c0 bc ff 0e 62 00 00 00 `FuIE.......b...
620effbcb0 b0 ff b7 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................
620effbcc0 48 00 00 00 00 00 00 00 - 01 00 00 00 00 00 00 00 H...............
620effbcd0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................
620effbce0 30 00 00 00 00 00 00 00 - ff ff ff ff ff ff ff ff 0...............
620effbcf0 ff ff ff ff ff ff ff ff - 93 e6 e1 23 ff 7f 00 00 ...........#....
620effbd00 00 00 00 00 00 00 00 00 - 22 00 00 00 00 00 00 00 ........".......
disassembling:
011d0bc0 public apGradient.TGradient.getLength: ; function entry point
011d0bc0 601 push rbp
011d0bc1 mov rbp, rsp
011d0bc4 602 > mov rax, [rcx+$c]
011d0bc8 mov eax, [rax+$10]
011d0bcb 603 mov rsp, rbp
011d0bce pop rbp
011d0bcf ret
Thanks for all the amount of support and continued development you’ve done for the program btw. I recently discovered PM-NG and it quickly became my favorite pixel art program out of all the ones I’ve used and I’d love to see it continue to grow.