Yup, this patch solved the bad file descriptor problem, but
WinAmp gives me this output when I run it (with a backtrace):
Unhandled exception: unimplemented function msvcrt.dll._i64toa called in 32-bit code (0x40cb0052).
In 32-bit mode.
Symbol __strtol_internal is invalid
0x40cb0052 (__wine_unimplemented+0x52 [msvcrt.spec.c:47] in msvcrt.dll.so): jmp 0x40cb004c (__wine_unimplemented+0x4c [msvcrt.spec.c:47] in msvcrt.dll.so)
50 void __wine_stub_msvcrt_dll_24(void) { __wine_unimplemented("??_7__non_rtti_object@@6B@"); }
Wine-dbg>bt
Backtrace:
=>0 0x40cb0052 (__wine_unimplemented+0x52(func=0x40cc6851) [msvcrt.spec.c:47] in msvcrt.dll.so) (ebp=406dfc5c)
1 0x40cb0604 (__wine_stub_msvcrt_dll_275 [msvcrt.spec.c:102] in msvcrt.dll.so) (ebp=406dfc6c)
2 0x10076730 (OUT_DS.DLL.winampGetOutModule+0x22a8 in C:\PROGRAM FILES\WINAMP\PLUGINS\OUT_DS.DLL) (ebp=406dfce8)
3 0x100766a0 (OUT_DS.DLL.winampGetOutModule+0x2218 in C:\PROGRAM FILES\WINAMP\PLUGINS\OUT_DS.DLL) (ebp=406e0358)
4 0x00418994 (winamp.exe..text+0x17994 in C:\Program Files\Winamp\winamp.exe) (ebp=403d46da)
5 0x002e0000 (ebp=00240000)
*** Invalid address 0x00240000
(I don't really need to use winamp, but it was an easy
example of the previous problem.)
-Steve
PS - Uwe, I'd love to be able to quote email correctly, but
I'm forced to use Lotus Notes at work, which doesn't seem to
know how to reply very well. If anyone knows how to make
Notes behave like a normal mail client, let me know.
Alexandre
Julliard To: Steve Lustbader/ANR/MS/PHILIPS@AMEC
<julliard@winehq cc: Sylvain Petreolle <spetreolle(a)yahoo.fr>
.com> wine-devel(a)winehq.com
Sent by: Subject: Re: Registry problem
julliard@winehq.
com Classification:
10/09/2002 12:25
PM
steve.lustbader(a)philips.com writes:
> When I try to run WinAmp, it exits immediately with that same error.
> It doesn't run at all, unlike the installer, which runs but then ends
> with the error (probably when it tries to run winamp itself).
Does this help?
Index: dlls/winmm/wineoss/audio.c
===================================================================
RCS file: /opt/cvs-commit/wine/dlls/winmm/wineoss/audio.c,v
retrieving revision 1.62
diff -u -r1.62 audio.c
--- dlls/winmm/wineoss/audio.c 7 Oct 2002 18:23:40 -0000 1.62
+++ dlls/winmm/wineoss/audio.c 9 Oct 2002 16:23:52 -0000
@@ -245,7 +245,7 @@
if ((fd = open(ossdev->dev_name, ossdev->open_access|O_NDELAY, 0)) == -1)
{
WARN("Couldn't open out %s (%s)\n", ossdev->dev_name, strerror(errno));
- return (errno == EBUSY) ? MMSYSERR_ALLOCATED : MMSYSERR_ERROR;
+ return -1;
}
fcntl(fd, F_SETFD, 1); /* set close on exec flag */
/* turn full duplex on if it has been requested */
@@ -373,7 +373,7 @@
}
TRACE("Changing fd from %d to ", ossdev->fd);
close(ossdev->fd);
- OSS_RawOpenDevice(ossdev, &ossdev->audio_fragment);
+ ossdev->fd = OSS_RawOpenDevice(ossdev, &ossdev->audio_fragment);
TRACE("%d\n", ossdev->fd);
return ossdev->fd;
}
--
Alexandre Julliard
julliard(a)winehq.com