[Gstreamer-bugs] [Bug 132057] New - Seg. fault when decoding QuickTIme/MJPEG

bugzilla-daemon at widget.gnome.org bugzilla-daemon at widget.gnome.org
Tue Jan 20 19:53:38 PST 2004


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

http://bugzilla.gnome.org/show_bug.cgi?id=132057

Changed by gnome at flyn.org.

--- shadow/132057	Tue Jan 20 22:53:38 2004
+++ shadow/132057.tmp.5708	Tue Jan 20 22:53:38 2004
@@ -0,0 +1,96 @@
+Bug#: 132057
+Product: GStreamer
+Version: 0.7.3
+OS: Linux
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: normal
+Priority: Normal
+Component: gst-plugins
+AssignedTo: gstreamer-maint at bugzilla.gnome.org                            
+ReportedBy: gnome at flyn.org               
+QAContact: gstreamer-maint at bugzilla.gnome.org
+TargetMilestone: HEAD
+URL: 
+Summary: Seg. fault when decoding QuickTIme/MJPEG
+
+I have several QuickTime files that use the MJPEG codec.  Gst-launch seg.
+faults when I try to decode them with:
+
+gst-launch filesrc location=acronyms.mov ! qtdemux name=demux .video_00 ! {
+queue ! jpegdec ! colorspace ! ximagesink }
+
+Here is a gdb backtrace of the same:
+
+[mike at imp mike]$ gdb gst-launch
+GNU gdb Red Hat Linux (5.3.90-0.20030710.41rh)
+Copyright 2003 Free Software Foundation, Inc.
+GDB is free software, covered by the GNU General Public License, and you are
+welcome to change it and/or distribute copies of it under certain conditions.
+Type "show copying" to see the conditions.
+There is absolutely no warranty for GDB.  Type "show warranty" for details.
+This GDB was configured as "ppc-redhat-linux-gnu"...Using host libthread_db
+library "/lib/tls/libthread_db.so.1".
+ 
+(gdb) run filesrc location=~/flyn_mind/docs/videos/50th_anniversary.mov !
+qtdemux name=demux .video_00 ! { queue ! jpegdec ! colorspace ! ximagesink }
+Starting program: /usr/local/bin/gst-launch filesrc
+location=~/flyn_mind/docs/videos/50th_anniversary.mov ! qtdemux name=demux
+.video_00 ! { queue ! jpegdec ! colorspace ! ximagesink }
+[Thread debugging using libthread_db enabled]
+[New Thread 805549440 (LWP 3031)]
+RUNNING pipeline
+[New Thread 809954080 (LWP 3032)]
+ 
+Program received signal SIGSEGV, Segmentation fault.
+[Switching to Thread 809954080 (LWP 3032)]
+0x0f811a44 in gst_jpegdec_chain (pad=0x140, _data=0x100b2c20)
+    at gstjpegdec.c:441
+441           jpegdec->line[0][j]   = base[0]; base[0] += width;
+(gdb) ba
+#0  0x0f811a44 in gst_jpegdec_chain (pad=0x140, _data=0x100b2c20)
+    at gstjpegdec.c:441
+#1  0x0f811bd0 in gst_jpegdec_chain (pad=0x1009d050, _data=0x100b2c20)
+    at gstjpegdec.c:462
+#2  0x0ff0f244 in gst_pad_push (pad=0x1009d050, data=0x3046de50)
+    at gstpad.c:2347
+#3  0x0f550130 in get_group_schedule_function (argc=261531684, argv=0x100b2c20)
+    at gstoptimalscheduler.c:970
+#4  0x0f54fb90 in schedule_group (group=0x1009d108)
+    at gstoptimalscheduler.c:841
+#5  0x0f54fcac in gst_opt_scheduler_schedule_run_queue (osched=0x1009d108)
+    at gstoptimalscheduler.c:880
+#6  0x0f54fea4 in schedule_chain (chain=0x100a2100)
+    at gstoptimalscheduler.c:924
+#7  0x0f552c6c in gst_opt_scheduler_iterate (sched=0xffed5e8)
+    at gstoptimalscheduler.c:2074
+#8  0x0ff1fa28 in gst_scheduler_iterate (sched=0x1009d050)
+    at gstscheduler.c:729
+#9  0x0fef0ff0 in gst_bin_iterate_func (bin=0x1009d108) at gstbin.c:1080
+#10 0x0feea710 in gst_marshal_BOOLEAN__VOID (closure=0x1009d050,
+    return_value=0x100b2c00, n_param_values=0, param_values=0xf96a824,
+    invocation_hint=0x0, marshal_data=0x1009d108) at gstmarshal.c:353
+#11 0x0fb6da54 in g_type_class_meta_marshal (closure=0x1009d050,
+    return_value=0x1009d108, n_param_values=269099264, param_values=0xffed5e8,
+    invocation_hint=0x100b2c00, marshal_data=0xf550904) at gclosure.c:514
+#12 0x0fb6d6e8 in g_closure_invoke (closure=0x10028fb0,
+    return_value=0x3046e0d8, n_param_values=1, param_values=0x3046e178,
+    invocation_hint=0x3046e0c0) at gclosure.c:437
+#13 0x0fb8036c in signal_emit_unlocked_R (node=0x10028fe8, detail=268359144,
+    instance=0xf56cd14, emission_return=0x100b2c00,
+    instance_and_params=0x100a2100) at gsignal.c:2860
+#14 0x0fb7f610 in g_signal_emit_valist (instance=0x100adf00,
+    signal_id=809951992, detail=0, var_args=0x3046e420) at gsignal.c:2564
+#15 0x0fb7fab4 in g_signal_emit (instance=0xf96a824, signal_id=269167648,
+    detail=0) at gsignal.c:2612
+#16 0x0fef10d8 in gst_bin_iterate (bin=0x100adf00) at gstbin.c:1119
+#17 0x0ff29748 in gst_thread_main_loop (arg=0xffed5e8) at gstthread.c:551
+#18 0x0fac279c in g_thread_create_proxy (data=0xf96a824) at gthread.c:551
+#19 0x0fd710d4 in start_thread () from /lib/tls/libpthread.so.0
+#20 0x0f9d505c in clone () from /lib/tls/libc.so.6
+(gdb)
+
+A quick peek at things shows that the code seg. faults because
+jpegdec->line[0] is NULL when "jpegdec->line[0][j]   = base[0]; base[0] +=
+width" executes.




More information about the Gstreamer-bugs mailing list