[PATCH] ddraw: Avoid break in __TRY blocks.
Stefan Dösinger
stefandoesinger at gmx.at
Tue Feb 14 16:15:52 CST 2017
> Am 14.02.2017 um 22:01 schrieb Sebastian Lackner <sebastian at fds-team.de>:
>
> While you are just at it, please note that this code also contains a leak
> when the exception is triggered. Actually, it would probably be easier to
> test if the pointer is writeable in advance, and exit early without creating
> the surface at all.
I wouldn’t be the least bit surprised if Windows leaked in this situation as well. But I guess for the test it is relevant for Valgrind runs.
A pre-emptive
__TRY
{
*surface = NULL;
}
__EXCEPT_PAGE_FAULT
{
return E_INVALIDARG;
}
before doing any work would be nicer, if it doesn’t have any unexpected side effects (e.g. Windows might keep *surface alone in some error conditions, which wouldn’t surprise me either).
Alex, can you look into fixing the leak?
More information about the wine-devel
mailing list