[PATCH v2 1/2] msvcrt: Clean up registered C++ object in handler.

Daniel Lehman dlehman at esri.com
Tue Jun 6 10:31:23 CDT 2017


> > +        __CxxUnregisterExceptionObject(frame,
> > +                rec->ExceptionCode == CXX_EXCEPTION &&
> > +                data->exc_record->ExceptionCode == CXX_EXCEPTION &&
> > +                rec->ExceptionInformation[1] == data->exc_record->ExceptionInformation[1]);
> > +    }
> Do you need to call __CxxUnregisterExceptionObject with TRUE as second argument in any case except of rethrow?

Yeah, just rethrow is handled specially.  And extra specially for SEH

> __FINALLY_CTX(cxx_catch_cleanup, &catch_cleanup_ctx);
>
> The above code is incorrect if exception object needs to be preserved not only in case of rethrow.
>
> What do you think about it?

Sounds good

Thanks,
Piotr



More information about the wine-devel mailing list