http://bugs.winehq.org/show_bug.cgi?id=2830
Summary: MSFT_GetTdesc fails on methods with >= 30 params Product: Wine Version: 20050310 Platform: Other OS/Version: Linux Status: UNCONFIRMED Severity: critical Priority: P2 Component: wine-ole AssignedTo: wine-bugs@winehq.org ReportedBy: whitesnake78@mail.com
The attached output show the faiulure of MSFT_GetTdesc when regsrv32 mydll.dll The dll is a test dll with some methods; the registration fails when the number of parameters is > 29 The output is "customized" in the hope to make easier bugtracking. if required, i can send both the source code and the compiled dll.
thanks.
fixme:ole:ITypeLib2_Constructor_MSFT 0x416872a0, TLB length = 4196 fixme:ole:ITypeLib2_Constructor_MSFT header: fixme:ole:ITypeLib2_Constructor_MSFT magic1=0x5446534d ,magic2=0x00010002 fixme:ole:ITypeLib2_Constructor_MSFT read segment directory (at 92) fixme:ole:ITypeLib2_Constructor_MSFT tlbSegDir.pTypdescTab.length 8 fixme:ole:ITypeLib2_Constructor_MSFT cTD 1 fixme:ole:ITypeLib2_Constructor_MSFT tlbHeader.nrtypeinfos 2 fixme:ole:MSFT_DoTypeInfo count 0 fixme:ole:MSFT_DoTypeInfo reading L"CtestComObject" fixme:ole:MSFT_DoTypeInfo count 1 fixme:ole:MSFT_DoTypeInfo reading L"ItestComObject" fixme:ole:MSFT_DoFuncs Total Functions 6 fixme:ole:MSFT_DoFuncs Function L"method_001" fixme:ole:MSFT_DoFuncs function 0 Args 0/2 fixme:ole:MSFT_DoFuncs function 0 Args 0/2 2668 fixme:ole:MSFT_DoFuncs function 0 Args 1/2 fixme:ole:MSFT_GetTdesc type 0 offset 0 totcount 1 fixme:ole:MSFT_DoFuncs function 0 Args 1/2 2680 fixme:ole:MSFT_DoFuncs Function L"method_002" fixme:ole:MSFT_DoFuncs function 1 Args 0/3 fixme:ole:MSFT_DoFuncs function 1 Args 0/3 2724 fixme:ole:MSFT_DoFuncs function 1 Args 1/3 fixme:ole:MSFT_DoFuncs function 1 Args 1/3 2736 fixme:ole:MSFT_DoFuncs function 1 Args 2/3 fixme:ole:MSFT_GetTdesc type 0 offset 0 totcount 1 fixme:ole:MSFT_DoFuncs function 1 Args 2/3 2748 fixme:ole:MSFT_DoFuncs Function L"method_010"
...
fixme:ole:MSFT_DoFuncs function 4 Args 30/31 fixme:ole:MSFT_GetTdesc type 0 offset 0 totcount 1 fixme:ole:MSFT_DoFuncs function 4 Args 30/31 3600 fixme:ole:MSFT_DoFuncs Function L"method_040" fixme:ole:MSFT_DoFuncs function 5 Args 0/31 fixme:ole:MSFT_DoFuncs function 5 Args 0/31 3252 fixme:ole:MSFT_DoFuncs function 5 Args 1/31 fixme:ole:MSFT_DoFuncs function 5 Args 1/31 3264 fixme:ole:MSFT_DoFuncs function 5 Args 2/31 fixme:ole:MSFT_DoFuncs function 5 Args 2/31 3276 fixme:ole:MSFT_DoFuncs function 5 Args 3/31 fixme:ole:MSFT_DoFuncs function 5 Args 3/31 3288 fixme:ole:MSFT_DoFuncs function 5 Args 4/31 fixme:ole:MSFT_DoFuncs function 5 Args 4/31 3300 fixme:ole:MSFT_DoFuncs function 5 Args 5/31 fixme:ole:MSFT_DoFuncs function 5 Args 5/31 3312 fixme:ole:MSFT_DoFuncs function 5 Args 6/31 fixme:ole:MSFT_DoFuncs function 5 Args 6/31 3324 fixme:ole:MSFT_DoFuncs function 5 Args 7/31 fixme:ole:MSFT_DoFuncs function 5 Args 7/31 3336 fixme:ole:MSFT_DoFuncs function 5 Args 8/31 fixme:ole:MSFT_DoFuncs function 5 Args 8/31 3348 fixme:ole:MSFT_DoFuncs function 5 Args 9/31 fixme:ole:MSFT_DoFuncs function 5 Args 9/31 3360 fixme:ole:MSFT_DoFuncs function 5 Args 10/31 fixme:ole:MSFT_DoFuncs function 5 Args 10/31 3372 fixme:ole:MSFT_DoFuncs function 5 Args 11/31 fixme:ole:MSFT_DoFuncs function 5 Args 11/31 3384 fixme:ole:MSFT_DoFuncs function 5 Args 12/31 fixme:ole:MSFT_DoFuncs function 5 Args 12/31 3396 fixme:ole:MSFT_DoFuncs function 5 Args 13/31 fixme:ole:MSFT_DoFuncs function 5 Args 13/31 3408 fixme:ole:MSFT_DoFuncs function 5 Args 14/31 fixme:ole:MSFT_DoFuncs function 5 Args 14/31 3420 fixme:ole:MSFT_DoFuncs function 5 Args 15/31 fixme:ole:MSFT_DoFuncs function 5 Args 15/31 3432 fixme:ole:MSFT_DoFuncs function 5 Args 16/31 fixme:ole:MSFT_DoFuncs function 5 Args 16/31 3444 fixme:ole:MSFT_DoFuncs function 5 Args 17/31 fixme:ole:MSFT_DoFuncs function 5 Args 17/31 3456 fixme:ole:MSFT_DoFuncs function 5 Args 18/31 fixme:ole:MSFT_DoFuncs function 5 Args 18/31 3468 fixme:ole:MSFT_DoFuncs function 5 Args 19/31 fixme:ole:MSFT_DoFuncs function 5 Args 19/31 3480 fixme:ole:MSFT_DoFuncs function 5 Args 20/31 fixme:ole:MSFT_DoFuncs function 5 Args 20/31 3492 fixme:ole:MSFT_DoFuncs function 5 Args 21/31 fixme:ole:MSFT_DoFuncs function 5 Args 21/31 3504 fixme:ole:MSFT_DoFuncs function 5 Args 22/31 fixme:ole:MSFT_DoFuncs function 5 Args 22/31 3516 fixme:ole:MSFT_DoFuncs function 5 Args 23/31 fixme:ole:MSFT_DoFuncs function 5 Args 23/31 3528 fixme:ole:MSFT_DoFuncs function 5 Args 24/31 fixme:ole:MSFT_DoFuncs function 5 Args 24/31 3540 fixme:ole:MSFT_DoFuncs function 5 Args 25/31 fixme:ole:MSFT_DoFuncs function 5 Args 25/31 3552 fixme:ole:MSFT_DoFuncs function 5 Args 26/31 fixme:ole:MSFT_DoFuncs function 5 Args 26/31 3564 fixme:ole:MSFT_DoFuncs function 5 Args 27/31 fixme:ole:MSFT_DoFuncs function 5 Args 27/31 3576 fixme:ole:MSFT_DoFuncs function 5 Args 28/31 fixme:ole:MSFT_DoFuncs function 5 Args 28/31 3588 fixme:ole:MSFT_DoFuncs function 5 Args 29/31 fixme:ole:MSFT_GetTdesc type 0 offset 0 totcount 1 fixme:ole:MSFT_DoFuncs function 5 Args 29/31 3600 fixme:ole:MSFT_DoFuncs function 5 Args 30/31 fixme:ole:MSFT_GetTdesc type 328204 offset 41025 totcount 1 wine: Unhandled exception (thread 0009), starting debugger... WineDbg starting on pid 0x8 Unhandled exception: page fault on read access to 0x403f4fa4 in 32-bit code (0x40b938e9). In 32 bit mode. Register dump: CS:0073 SS:007b DS:007b ES:007b FS:003b GS:0033 EIP:40b938e9 ESP:406de698 EBP:406de6a8 EFLAGS:00010207( - 00 -RIP1C) EAX:403a4d98 EBX:40bc9488 ECX:401effe8 EDX:406dee68 ESI:0000a041 EDI:403a86c0 Stack dump: 0x406de698: 406dee68 40bc9488 000001e0 00000168 0x406de6a8: 406deccc 40b944cd 403a6448 00000174 0x406de6b8: 00000006 406de6e8 00000001 00000001 0x406de6c8: 00000001 00000208 406de9a4 406de744 0x406de6d8: 401b7f9e 401f0644 40bce746 406de840 0x406de6e8: 0000001e 406de850 00000e10 00000005 Backtrace: =>1 0x40b938e9 MSFT_GetTdesc(pTI=0x403a6448) [/home/whitesnake/Soft/wine-20050310/dlls/oleaut32/typelib.c:1610] in oleaut32 (0x406de6a8) 2 0x40b944cd MSFT_DoTypeInfo+0x8cd(pcx=0x406dee68, count=0x1, pLibInfo=0x40370aa0) [/home/whitesnake/Soft/wine-20050310/dlls/oleaut32/typelib.c:1761] in oleaut32 (0x406deccc) 3 0x40b954da ITypeLib2_Constructor_MSFT+0x79a [/home/whitesnake/Soft/wine-20050310/dlls/oleaut32/typelib.c:2501] in oleaut32 (0x406dee94) 4 0x40b95b06 TLB_ReadTypeLib(pszFileName=0x406df0f0, index=0x1, ppTypeLib=0x406df970) [/home/whitesnake/Soft/wine-20050310/dlls/oleaut32/typelib.c:2255] in oleaut32 (0x406deec0) 5 0x40b97ada LoadTypeLibEx+0xfa(szFile=0x406df33c, regkind=0x0, pptLib=0x406df970) [/home/whitesnake/Soft/wine-20050310/dlls/oleaut32/typelib.c:344] in oleaut32 (0x406df30c) 6 0x40b97c9c LoadTypeLib(szFile=0x406df33c, pptLib=0x406df970) [/home/whitesnake/Soft/wine-20050310/dlls/oleaut32/typelib.c:296] in oleaut32 (0x406df32c) 7 0x100274e5 in dll (+0x274e5) (0x406df648) 8 0x10026ccd in dll (+0x26ccd) (0x406df984) 9 0x10026b9f in dll (+0x26b9f) (0x406dfa84) 10 0x100269d4 in dll (+0x269d4) (0x406dfb70) 11 0x100267ac in dll (+0x267ac) (0x406dfc64) 12 0x10026618 in dll (+0x26618) (0x406dfd64) 13 0x1002631a in dll (+0x2631a) (0x406dfe3c) 14 0x405d44cf RegisterDll(strDll=0x40360689) [regsvr32.c:113] in regsvr32 (0x406dfe5c) 15 0x405d477a main(argc=0x2, argv=0x40360670) [regsvr32.c:254] in regsvr32 (0x406dfe9c) 16 0x405d41b9 __wine_exe_main+0x169 in regsvr32 (0x406dff2c) 17 0x404eb478 start_process+0xc8(arg=0x0) [/home/whitesnake/Soft/wine-20050310/dlls/kernel/process.c:1047] in kernel32 (0x406dfff4) 18 0x4003aa51 wine_switch_to_stack+0x11 in libwine.so.1 (0x00000000) 0x40b938e9 MSFT_GetTdesc+0x39 [/home/whitesnake/Soft/wine-20050310/dlls/oleaut32/typelib.c:1610] in oleaut32: movl 0x4(%eax,%esi,8),%edx 1610 if(pTd->vt == VT_USERDEFINED) Wine-dbg>quit WineDbg terminated on pid 0x8