"Rob Shearman" robertshearman@gmail.com writes:
Skip calling the Pointer marshalling/unmarshalling/buffer sizing/freeing function in this case.
Output code for calling union marshalling/unmarshalling/buffer sizing/freeing functions.
Now it breaks the tests:
../../../tools/runtest -q -P wine -M qmgr.dll -T ../../.. -p qmgr_test.exe.so file.c && touch file.ok wine: Unhandled page fault on read access to 0x001322a8 at address 0x7b86122d (thread 0032), starting debugger... Unhandled exception: page fault on read access to 0x001322a8 in 32-bit code (0x7b86122d). Register dump: CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b EIP:7b86122d ESP:0032fcf0 EBP:0032fd18 EFLAGS:00010246( - 00 -RIZP1) EAX:001322a8 EBX:7b8b5818 ECX:7bc904c4 EDX:001322a8 ESI:ffffffff EDI:00000000 Stack dump: 0x0032fcf0: 00000001 0032fd04 00110014 6055221c 0x0032fd00: 00000001 00000409 0032fd18 7b8b5818 0x0032fd10: 60552980 001322a8 0032fd48 7b863944 0x0032fd20: 00000409 00000000 001322a8 ffffffff 0x0032fd30: 60552980 ffffffff 0032fd58 6055221c 0x0032fd40: 00000000 60550060 0032fd78 6054ca20 Backtrace: =>0 0x7b86122d CompareStringW+0x12d(lcid=1033, style=0, str1=0x1322a8, len1=0, str2=0x60552980, len2=-1) [/home/julliard/wine/wine/dlls/kernel32/../../include/wine/unicode.h:216] in kernel32 (0x0032fd18) 1 0x7b863944 lstrcmpW+0x64(str1=<register EDI not in topmost frame>, str2=<register ESI not in topmost frame>) [/home/julliard/wine/wine/dlls/kernel32/locale.c:2830] in kernel32 (0x0032fd48) 2 0x6054ca20 test_GetRemoteName+0x90() [/home/julliard/wine/wine/dlls/qmgr/tests/file.c:127] in qmgr_test (0x0032fd78) 3 0x6054ccf4 func_file+0x274() [/home/julliard/wine/wine/dlls/qmgr/tests/file.c:108] in qmgr_test (0x00320000) 4 0x00000000 (0x00000000) 0x7b86122d CompareStringW+0x12d [/home/julliard/wine/wine/dlls/kernel32/../../include/wine/unicode.h:216] in kernel32: cmpw $0,0x0(%eax) 216 while (*s) s++;