pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/37057: MPlayer crashes on sparc64 within the x11 video driver



>Number:         37057
>Category:       pkg
>Synopsis:       MPlayer crashes on sparc64 within the x11 video driver
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Oct 03 21:00:00 +0000 2007
>Originator:     khorben%defora.org@localhost
>Release:        NetBSD 4.99.31
>Organization:

>Environment:
System: NetBSD exxh.defora.lan 4.99.31 NetBSD 4.99.31 (GENERIC) #0: Sun Sep 30 
18:22:11 CEST 2007 
khorben%exxh.defora.lan@localhost:/usr/obj/sys/arch/sparc64/compile/GENERIC 
sparc64
Architecture: sparc64
Machine: sparc64
>Description:
Just like as reported in pkg/37054, MPlayer crashes due to incorrect usage of
XChangeProperty() with a bus error. In libvo/x11_common.c:

 935 void vo_x11_classhint(Display * display, Window window, char *name)
 936 {
 937     XClassHint wmClass;
 938     pid_t pid = getpid();
 939 
 940     wmClass.res_name = name;
 941     wmClass.res_class = "MPlayer";
 942     XSetClassHint(display, window, &wmClass);
 943     XChangeProperty(display, window, XA_NET_WM_PID, XA_CARDINAL, 32,
 944                     PropModeReplace, (unsigned char *) &pid, 1);
 945 }

The pid variable at line 938 is not aligned on the size of a long.

>How-To-Repeat:
Use MPlayer mplayer-1.0rc9nb9 from pkgsrc on sparc64 with the x11 video output
plug-in.
>Fix:
The following patch fixes the problem:

$NetBSD$

--- libvo/x11_common.c.orig     2006-10-23 00:32:26.000000000 +0200
+++ libvo/x11_common.c
@@ -935,7 +935,7 @@ void vo_x11_decoration(Display * vo_Disp
 void vo_x11_classhint(Display * display, Window window, char *name)
 {
     XClassHint wmClass;
-    pid_t pid = getpid();
+    long pid = getpid();
 
     wmClass.res_name = name;
     wmClass.res_class = "MPlayer";




Home | Main Index | Thread Index | Old Index