Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: mplayer crashes when quiting
To:
Landry Breuil <landry@openbsd.org>
Cc:
Walter Alejandro Iglesias <wai@roquesor.com>, ports@openbsd.org, brad@comstyle.com
Date:
Mon, 10 Nov 2025 12:51:56 +0000

Download raw body.

Thread
On 2025/11/10 12:45, Landry Breuil wrote:
> Le Mon, Nov 10, 2025 at 12:08:13PM +0100, Walter Alejandro Iglesias a écrit :
> > mplayer seems to play videos fine but when the program exits it prints
> > this message:
> >
> >   MPlayer interrupted by signal 11 in module: uninit_acodec
> >   - MPlayer crashed by bad usage of CPU/FPU/RAM.
> >     Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and
> >     disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash.
> >   - MPlayer crashed. This shouldn't happen.
> >     It can be a bug in the MPlayer code _or_ in your drivers _or_ in your
> >     gcc version. If you think it's MPlayer's fault, please read
> >
> >
> > Thread 1 received signal SIGSEGV, Segmentation fault.
> > 0x00000a9a6fa5b024 in av_freep () from /usr/local/lib/libavutil.so.17.0
> > (gdb) bt
> > #0  0x00000a9a6fa5b024 in av_freep () from /usr/local/lib/libavutil.so.17.0
> > #1  0x00000a984c4e1c04 in ?? ()
> > #2  0x0000003000000018 in ?? ()
> > #3  0x0000000000000000 in ?? ()
> > (gdb) q
> 
> can confirm the crash, better trace below, when compiled with the
> attached diff that disables striping.
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x00000d1fd0fed024 in av_freep () from /usr/local/lib/libavutil.so.17.0
> (gdb) bt
> #0  0x00000d1fd0fed024 in av_freep () from /usr/local/lib/libavutil.so.17.0

pkg_add debug-ffmpeg and you should get something more on that line.

> #1  0x00000d1d742a1c74 in uninit (sh=<optimized out>) at libmpcodecs/ad_ffmpeg.c:201
> #2  0x00000d1d741d55b1 in uninit_audio (sh_audio=0xd1fd2bf3280) at libmpcodecs/dec_audio.c:326
> #3  0x00000d1d7416f5fe in uninit_player (mask=7883) at mplayer.c:578
> #4  0x00000d1d7416f9d7 in exit_player_with_rc (how=EXIT_QUIT, rc=0) at mplayer.c:708
> #5  0x00000d1d741669ee in run_command (mpctx=0xd1d7430c1f8 <mpctx_s>, cmd=0xd1fd2bd9f00) at command.c:2773
> #6  0x00000d1d74174555 in main (argc=2, argv=0x743d0318a5b8) at mplayer.c:3999
> 
> 
> index 8834457eb25..d2fb65ebca5 100644
> --- a/x11/mplayer/Makefile
> +++ b/x11/mplayer/Makefile
> @@ -8,6 +8,8 @@ CATEGORIES=     x11 multimedia
>  SITES=         https://comstyle.com/source/
>  EXTRACT_SUFX=  .tar.xz
> 
> +DEBUG_PACKAGES= ${BUILD_PACKAGES}

adding this wants a bump

> +
>  USE_NOBTCFI=   Yes
> 
>  HOMEPAGE=      https://www.mplayerhq.hu/
> diff --git a/x11/mplayer/patches/patch-configure b/x11/mplayer/patches/patch-configure
> index 54795a29412..d1b0d6c0308 100644
> --- a/x11/mplayer/patches/patch-configure
> +++ b/x11/mplayer/patches/patch-configure
> @@ -150,6 +150,15 @@ Index: configure
>   extern_prefix=${sym%%ff_extern*}
>   def_extern_asm="#define EXTERN_ASM $extern_prefix"
>   def_extern_prefix="#define EXTERN_PREFIX \"$extern_prefix\""
> +@@ -2952,7 +2972,7 @@ fi # if darwin && test "$cc_vendor" = "gnu" ; then
> +
> +
> + # Checking for CFLAGS
> +-_install_strip="-s"
> ++_install_strip=""
> + if test -z "$_strip"; then
> +   _strip=strip
> + else
>  @@ -2985,7 +3005,7 @@ else
>   fi

if this works it might be better (ideally want to keep stripping
on archs without debug pkgs):

.if defined(DEBUG)
CONFIGURE_ARGS += --strip=/usr/bin/true
.endif