[MPlayer-dev-eng] [PATCH] (loader/ext.c) VirtualAlloc() SIGSEGV on Linux + other fixes

Roberto Togni r_togni at tiscali.it
Wed Sep 8 00:20:19 CEST 2004


On 2004.08.16 11:22, A. Guru wrote:
> Changes:
> 
>     * mplayer received a SIGSEGV under Linux after
> 
> 	Opening video decoder: [dmo] DMO video codecs
> 	VirtualAlloc(0x00400000, 859648, 0x00003000, 0x00000040)
> 
>       with
> 
> 	-rw-r--r--  1 root root 807032 Nov 20  2002
> /usr/local/lib/codecs/wmv9dmod.dll
> 
>       because that region was already under use and mmap() with
> MAP_FIXED has
>       problems under Linux (see code).  VirtualAlloc() fixed in
> "loader/ext.c".
> 
>     * VirtualAlloc() made to conform with win32 documented behavior
> regarding
>       the alignment of the address and size arguments.
> 
>     * VirtualAlloc() detection of overlap with previous regions  
> fixed.
> 
> 
> 
> Feel free to comment printf() statements after proper behavior is
> verified.
> Also feel free to ajust indentation style to your liking.
I had this patch in my tree for some time now, and i didn't got me any  
trouble. It also fixed an error with MS screen codec 2 dmo i was  
testing (it sig11 without the patch, the patch fixes it, the codec does  
not work for other reasons).

Since noone else commented it so far, i'm going to commit it soon if  
noone speaks up now against it.

So, if you care about win32 loader, please apply this patch to your  
local tree and report if it breaks something.

Ciao,
 Roberto





More information about the MPlayer-dev-eng mailing list