I'm still having issues getting dvswitch to run on a fresh Etch install with
a single local camera connecting via the loopback address.

Dvswitch segfaults when the first camera connects, after displaying a full
single frame (although you can only see this when using GDB).  dvgrab etc
all works fine and dvsource-firewire seems to chug along happily though it
all.

I think there may be a bug with the installer paths: with the code
referencing pngs at /usr/local/share/dvswitch/ but files installed to
/usr/share/dvswitch/ but adding symbolic links didn't seem to help the
segfault so that is either unrelated or I was wrong.

I finally managed to get the debug symbols happening and it appears to
segfault in dv_thumb_display_widget when it tries to reference x_image which
is a null pointer.

GDB follows, any suggestions welcomed.

(gdb) run
Starting program: /usr/bin/dvswitch -h 127.0.0.1 -p 10000
shell-init: error retrieving current directory: getcwd: cannot access parent
directories: No such file or directory
Failed to read a valid object file image from memory.
[Thread debugging using libthread_db enabled]
[New Thread -1222097216 (LWP 5272)]
[New Thread -1223791696 (LWP 5275)]
[New Thread -1232184400 (LWP 5276)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1222097216 (LWP 5272)]
dv_thumb_display_widget::draw_frame (this=0x80c81c8, [EMAIL PROTECTED],
height=576)
   at dv_display_widget.cpp:360
360         assert(x_image->bits_per_pixel == 24 || x_image->bits_per_pixel
== 32);

(gdb) bt
#0  dv_thumb_display_widget::draw_frame (this=0x80c81c8,
[EMAIL PROTECTED], height=576)
   at dv_display_widget.cpp:360
#1  0x080577b4 in dv_display_widget::put_frame (this=0x80c81c8,
[EMAIL PROTECTED])
   at dv_display_widget.cpp:112
#2  0x08053c7a in mixer_window::update (this=0x809c498) at
mixer_window.cpp:135
#3  0x08054af5 in SigC::ObjectSlot1_<bool, Glib::IOCondition,
mixer_window>::proxy ([EMAIL PROTECTED],
   s=0x80a4328) at /usr/include/sigc++-1.2/sigc++/object_slot.h:101
#4  0xb7979ec3 in Glib::IOSource::dispatch () from /usr/lib/libglibmm-
2.0.so.1
#5  0xb7979277 in Glib::Source::dispatch_vfunc () from /usr/lib/libglibmm-
2.0.so.1
#6  0xb7600731 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#7  0xb76037a6 in g_main_context_check () from /usr/lib/libglib-2.0.so.0
#8  0xb7603b67 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#9  0xb7ae1281 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#10 0xb7e38186 in Gtk::Main::run_impl () from /usr/lib/libgtkmm-2.0.so.1
#11 0xb7e38041 in Gtk::Main::run () from /usr/lib/libgtkmm-2.0.so.1
#12 0x0804f20c in main (argc=Cannot access memory at address 0x0
) at dvswitch.cpp:107


(gdb) print x_image
$1 = (XImage *) 0x0


Thanks,
 Beren.
_______________________________________________
Debconf-video mailing list
[email protected]
http://lists.debconf.org/mailman/listinfo/debconf-video

Reply via email to