View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0005594||JEDI VCL||00 JVCL Components||public||2011-06-09 10:42||2011-06-11 11:05|
|Target Version||Fixed in Version|
|Summary||0005594: jvplugin did't use GdiPlus unit|
|Description||the GdiPlus is download from http://www.bilsen.com/gdiplus/GdiPlus1.2.zip?|
if jvplugin use GdiPlus unit,the application did't exit;
the jvplugin kind is dll.
|Tags||No tags attached.|
Please provide the zipped sources of a sample application showing this.
Please note however that this is most likely due to a problem inside the GDIPLus unit you are using. As a result, it is most likely that we won't be able to provide support.
demo.zip (1,199,758 bytes)
This is a problem with the GDI+ unit. It calls GdiplusStartup/GdiplusShutdown in the initialization/finalization block. And those are called from the DllMain function (that Delphi inserts for you). But the documentation of GDI+ tells us that you must not call those functions from DllMain.
// Must not be called from DllMain - can cause deadlock.
And guess what you get with this Gdi+ unit: a deadlock on application termination.
A solution would be to comment out the GdiplusStartup/GdiplusShutdown in the unit's initialization/finalization block and call them by hand, but not from a initialization/finalization block or a function that is called from there.
|2011-06-09 10:42||bugmenot||New Issue|
|2011-06-10 15:04||obones||Note Added: 0018720|
|2011-06-10 15:04||obones||Status||new => feedback|
|2011-06-11 10:04||bugmenot||File Added: demo.zip|
|2011-06-11 11:05||AHUser||Note Added: 0018735|
|2011-06-11 11:05||AHUser||Status||feedback => resolved|
|2011-06-11 11:05||AHUser||Resolution||open => won't fix|
|2011-06-11 11:05||AHUser||Assigned To||=> AHUser|