On 01/30/2011 04:16 AM, Peter Schlaile wrote:
Hi,
find fix for a crash in create_alpha_bitmap() attached.
If it's easy to reproduce please create a test that demonstrates the problem.
Additional minor fix: bmi_has_alpha() tests for alpha channel != 0, but should test for alpha channel != 255.
This should be a separate patch.
Vitaliy.
Hi Vitaliy,
On Sun, 30 Jan 2011, Vitaliy Margolen wrote:
On 01/30/2011 04:16 AM, Peter Schlaile wrote:
Hi,
find fix for a crash in create_alpha_bitmap() attached.
If it's easy to reproduce please create a test that demonstrates the problem.
hmm, don't know, the application that triggered it, can be downloaded here: http://www.phononet.de/downloads/support/downloads/Aktueller_PNClient/PNCLIE...
It will fail on startup, because of that problem, showing a dialog box, that some of it's data has been damaged and offers you to close or restart. (The program installs it's own page fault exception handler, you can see the reason of the crash if you run wine with WINEDEBUG=+relay .)
If you apply my patch, it will start up correctly, ask for a valid license key (which can be skipped) and show a search screen for CDs/DVDs published in Germany.
Nevertheless: I hope, I explained pretty well, how and why the current code is wrong (aquiring a bitmap-pointer using CreateDIBSection, setting this bitmap to readonly using the fast track code path within StretchDIBits, writing to this bitmap again.).
Additional minor fix: bmi_has_alpha() tests for alpha channel != 0, but should test for alpha channel != 255.
This should be a separate patch.
probably, but you will agree, that this is a rather trivial change... (and pretty obvious, too).
Hope that's ok anyways.
Cheers, Peter
---- Peter Schlaile
On 01/30/2011 12:02 PM, Peter Schlaile wrote:
Nevertheless: I hope, I explained pretty well, how and why the current code is wrong (aquiring a bitmap-pointer using CreateDIBSection, setting this bitmap to readonly using the fast track code path within StretchDIBits, writing to this bitmap again.).
Sounds plausible to me, but I'm not expert in that area.
probably, but you will agree, that this is a rather trivial change... (and pretty obvious, too).
No, me and everyone else here won't agree. Please send a separate patch with explanation why the change is needed. Each patch have to contain one change and one change only. No exceptions. Please see patch submission guidelines here: http://wiki.winehq.org/SubmittingPatches
Vitaliy.