widl: The offset to the pointer layout in complex structures must be positive so add an assert and fix the format string.

Rob Shearman robertshearman at gmail.com
Mon Jun 23 17:38:59 CDT 2008


2008/6/23 Alexandre Julliard <julliard at winehq.org>:
> "Rob Shearman" <robertshearman at gmail.com> writes:
>
>> Otherwise we could generate an incorrect format string and crash in a
>> weird way at runtime instead.
>
> Looks like the assert works ;)

:-)

> ../../tools/widl/widl -I. -I. -I../../include -I../../include  -D__WINESRC__ -D_OLEAUT32_ -DCOM_NO_WINDOWS_H  -p -P oleaut32_oaidl_p.c oleaut32_oaidl.idl
> widl: typegen.c:1856: write_struct_tfs: Assertion `absoff >= *tfsoff' failed.
> make[2]: *** [oleaut32_oaidl_p.c] Aborted

I have a longer-term plan to fix this that will involve over-hauling
the way format strings are written, but this is going to have to wait
until after my pending widl patches go in otherwise there will likely
be some conflicts.

-- 
Rob Shearman



More information about the wine-devel mailing list