Date: Sun, 8 Jun 2003 15:06:15 +0200 From: ted@NLnetLabs.nl (Ted Lindgreen) To: freebsd-current@freebsd.org Subject: Re Regression: Playing QT files from mplayer stopped working in 5.1 Message-ID: <200306081306.h58D6F89005060@open.nlnetlabs.nl>
next in thread | raw e-mail | index | archive | help
> Since a short time (don't know exactly when it happened) it's not possible > anymore to play Quicktime files (.mov) with mplayer on 5.1-CURRENT. It has to > be a change in -CURRENT, I haven't updated mplayer. I do not have the right fix, but the cause of the problem is that in loader/win32.c at line 2077: 2076 if (v1 > 2) 2077 if (!close(v1a)) close is called with a ridiciously large value. In previous FreeBSD releases this appearently did not cause a fatal problem, but since a week or so mplayer aborts on it. A stupid, but effective workaround is not to call close if v1 is too large, f.i.: 2072 static int WINAPI expCloseHandle(long v1) 2073 { 2074 dbgprintf("CloseHandle(0x%x) => 1\n", v1); 2075 /* do not close stdin,stdout and stderr */ 2076 if (v1 > 2 && v1 < 128) 2077 if (!close(v1)) 2078 return 0; 2079 return 1; 2080 } Of course for the real fix one needs to delve deeper into mplayer to find out where the large valued filedescriptor comes from. -- ted
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200306081306.h58D6F89005060>