http://bugs.winehq.org/show_bug.cgi?id=2642
red-ray ray@pobox.co.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ray@pobox.co.uk
--- Comment #27 from red-ray ray@pobox.co.uk 2009-09-12 10:10:21 --- (In reply to comment #24)
Okay, reopening.
SIV (http://rh-software.com/) also crashes calling RasEnumDevicesA(). I have looked at the source code of whine which is: DWORD WINAPI RasEnumDevicesA(LPRASDEVINFOA lpRasDevinfo, LPDWORD lpcb, LPDWORD lpcDevices) { if (!lpcb || !lpcDevices) return ERROR_INVALID_PARAMETER;
FIXME("(%p,%p,%p),stub!\n",lpRasDevinfo,lpcb,lpcDevices); if (!lpRasDevinfo || (*lpcb < sizeof(RASDEVINFOA))) { *lpcb = sizeof(RASDEVINFOA); return ERROR_BUFFER_TOO_SMALL; } /* honor dwSize ? */ strcpy(lpRasDevinfo->szDeviceType, RASDT_Modem); strcpy(lpRasDevinfo->szDeviceName, "WINE virtmodem"); return 0; }
and noticed that the code to set *lpcDevices = 1; is a missing. I have changed SIV 4.01 (Beta-109) to initialise my lpcDevices variable to zero and SIV no longer crashes, but the WINE virtmodem is no longer reported.
I am currently updating SIV to be a Unicode program, so please can you fix RasEnumDevicesW() to be the same as RasEnumDevicesA() when you do the fix.