[Libburn] New error
Bryan Forbes
bryan at reigndropsfall.net
Tue Aug 24 08:18:16 PDT 2004
Ok, I changed the line you told me, recompiled everything (including
libcoaster and coaster-gui) and here's the thread apply all bt full I
get when it crashes:
Thread 8 (Thread 98311 (LWP 1530)):
#0 0x0e3ba908 in iso_source_generate (src=0x109, buffer=0x3251ba70 "",
size=2048) at libisofs/writer.c:373
next = 0
err = BURN_SOURCE_OK
target = (struct iso_write_target *) 0x103799a8
#1 0x0e69ba64 in get_bytes (src=0x1036aaf0, count=2048, data=0x3251ba70
"")
at libburn/sector.c:76
valid = 0
shortage = 2048
more = 2048
#2 0x0e69bd18 in convert_data (o=0x103799f0, src=0x1036aaf0, inmode=4,
data=0x3251ba70 "") at libburn/sector.c:128
outlen = 2048
inlen = 2048
offset = -1
outmode = 4
#3 0x0e69d19c in sector_data (o=0x103799f0, t=0x10349998, psub=0)
at libburn/sector.c:431
d = (struct burn_drive *) 0xe6b6cb4
subs = "\016kl[?]\000\000\0202\000\000\000\000\000\000\000\0002Q
[?][?]\000\000\000\000\016i T\000\000\000\000\000\000\000\001\016jE\230
\000\000\000\000\000\000\000\0002R[?][?]2R[?][?]\016k[?]`2Q[?][?]2Q
[?][?]0\000[?][?]\210\000$h\000\000\000\000\0207\231[?]\0204\231\230\000
\000\000\000\000\000\b"
data = (unsigned char *) 0x3251ba70 ""
#4 0x0e6a2df0 in burn_write_track (o=0x103799f0, s=0x10363fc0, tnum=0)
at libburn/write.c:374
t = (struct burn_track *) 0x10349998
d = (struct burn_drive *) 0xe6b6cb4
i = 0
tmp = 0
sectors = 34
#5 0x0e6a2af4 in burn_write_session (o=0x103799f0, s=0x10363fc0)
at libburn/write.c:319
d = (struct burn_drive *) 0xe6b6cb4
prev = (struct burn_track *) 0x0
next = (struct burn_track *) 0x0
i = 0
#6 0x0e6a3330 in burn_disc_write_sync (o=0x103799f0, disc=0x10364f38)
at libburn/write.c:473
sheet = (struct cue_sheet *) 0x10379988
d = (struct burn_drive *) 0xe6b6cb4
buf = {data = '\0' <repeats 65535 times>, sectors = 1, bytes =
2048}
lt = (struct burn_track *) 0x3252bac0
first = 1
i = 0
res = 0
#7 0x0e695e28 in write_disc_worker_func (w=0x103799f0) at
libburn/async.c:156
No locals.
#8 0x0e625e40 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#9 0x0e625eb8 in pthread_start_thread_event ()
from /lib/libpthread.so.0
No symbol table info available.
#10 0x0e08a37c in clone () from /lib/libc.so.6
No symbol table info available.
Thread 5 (Thread 49156 (LWP 1527)):
#0 0x0e62872c in __pthread_sigsuspend () from /lib/libpthread.so.0
No symbol table info available.
#1 0x0e628464 in __pthread_wait_for_restart_signal ()
from /lib/libpthread.so.0
No symbol table info available.
#2 0x0e625034 in pthread_cond_wait at GLIBC_2.0 ()
from /lib/libpthread.so.0
No symbol table info available.
#3 0x0e83c6c8 in _gnome_vfs_thread_pool_init ()
from /usr/lib/libgnomevfs-2.so.0
No symbol table info available.
#4 0x0e83c72c in _gnome_vfs_thread_pool_init ()
from /usr/lib/libgnomevfs-2.so.0
No symbol table info available.
#5 0x0e427484 in g_static_private_free ()
from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#6 0x0e625e40 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#7 0x0e625eb8 in pthread_start_thread_event ()
from /lib/libpthread.so.0
No symbol table info available.
#8 0x0e08a37c in clone () from /lib/libc.so.6
No symbol table info available.
Thread 3 (Thread 16386 (LWP 1525)):
#0 0x0e080548 in poll () from /lib/libc.so.6
No symbol table info available.
#1 0x0e40c358 in g_main_loop_get_context ()
from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#2 0x0e40b51c in g_main_context_dispatch ()
from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#3 0x0e40bdb8 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#4 0x0e763134 in link_thread_io_context ()
from /usr/lib/libORBit-2.so.0
No symbol table info available.
#5 0x0e427484 in g_static_private_free ()
from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#6 0x0e625e40 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#7 0x0e625eb8 in pthread_start_thread_event ()
from /lib/libpthread.so.0
No symbol table info available.
#8 0x0e08a37c in clone () from /lib/libc.so.6
No symbol table info available.
Thread 2 (Thread 32769 (LWP 1524)):
#0 0x0e080548 in poll () from /lib/libc.so.6
No symbol table info available.
#1 0x0e625bd8 in __pthread_manager () from /lib/libpthread.so.0
No symbol table info available.
#2 0x0e625d68 in __pthread_manager_event () from /lib/libpthread.so.0
No symbol table info available.
#3 0x0e08a37c in clone () from /lib/libc.so.6
No symbol table info available.
Thread 1 (Thread 16384 (LWP 1521)):
#0 0x0e62c888 in nanosleep () from /lib/libpthread.so.0
No symbol table info available.
#1 0x0e62c874 in nanosleep () from /lib/libpthread.so.0
No symbol table info available.
#2 0x0e42a3e4 in g_usleep () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#3 0x0e8b35c4 in Glib::usleep () from /usr/lib/libglibmm-2.4.so.1
No symbol table info available.
#4 0x10036f4c in Coaster::IO::burndisc (drive_info=0x101624c0,
speed=2147474432, burn_type=COASTER_BURN_AUDIO,
slot_progress=@0x7fffde20,
layout_array=@0x103799f0, lp=@0x7fffdc64) at cd-io.cc:203
disc = (struct burn_disc *) 0x10364f38
session = (struct burn_session *) 0x10363fc0
tr = (struct burn_track *) 0x10349998
volset = (struct iso_volumeset *) 0x10378710
src = (burn::burn_source *) 0x1036aaf0
o = (struct burn_write_opts *) 0x103799f0
p = {sessions = 239248356, session = 805352924, tracks =
1210328130,
track = 268660556, indices = 2147474384, index = 239248356,
start_sector = 0, sectors = 100000000, sector = 0}
context = {pCppObject_ = 0xe8b35c4}
#5 0x10057c08 in Coaster::ViewNotebook::on_burn_clicked
(this=0x101caf10)
at slot.h:166
burndialog = {_M_ptr = 0xe42a3e4}
result = 516
#6 0x10047b18 in sigc::adaptor_functor<sigc::bound_mem_functor0<void,
Coaster::ViewNotebook> >::operator() (this=0x0) at mem_fun.h:1781
No locals.
#7 0x10047acc in
sigc::internal::slot_call0<sigc::bound_mem_functor0<void,
Coaster::ViewNotebook>, void>::call_it (rep=0x204) at slot.h:89
No locals.
#8 0x0e8b10b8 in Glib::SignalProxyNormal::slot0_void_callback ()
from /usr/lib/libglibmm-2.4.so.1
No symbol table info available.
#9 0x0e4f605c in g_cclosure_marshal_VOID__VOID ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#10 0x0e4e05a4 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#11 0x0e4f5848 in g_signal_emit_by_name ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#12 0x0e4f49ec in g_signal_emit_valist ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#13 0x0e4f4d38 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#14 0x0fb1885c in _gtk_action_emit_activate ()
from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#15 0x0fb18940 in gtk_action_activate () from /usr/lib/libgtk-
x11-2.0.so.0
No symbol table info available.
#16 0x0e4f605c in g_cclosure_marshal_VOID__VOID ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#17 0x0e4e05a4 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#18 0x0e4f5ac4 in g_signal_emit_by_name ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#19 0x0e4f49ec in g_signal_emit_valist ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#20 0x0e4f4e98 in g_signal_emit_by_name ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#21 0x0fc9a950 in gtk_tool_button_get_type () from /usr/lib/libgtk-
x11-2.0.so.0
No symbol table info available.
#22 0x0e4f605c in g_cclosure_marshal_VOID__VOID ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#23 0x0e4e05a4 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#24 0x0e4f5ac4 in g_signal_emit_by_name ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#25 0x0e4f49ec in g_signal_emit_valist ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#26 0x0e4f4d38 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#27 0x0fb25628 in gtk_button_clicked () from /usr/lib/libgtk-
x11-2.0.so.0
No symbol table info available.
#28 0x0fb26804 in _gtk_button_paint () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#29 0x0e4f605c in g_cclosure_marshal_VOID__VOID ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#30 0x0e4e0930 in g_cclosure_new_swap ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#31 0x0e4e05a4 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#32 0x0e4f5374 in g_signal_emit_by_name ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#33 0x0e4f49ec in g_signal_emit_valist ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#34 0x0e4f4d38 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#35 0x0fb25568 in gtk_button_released () from /usr/lib/libgtk-
x11-2.0.so.0
No symbol table info available.
#36 0x0fb26618 in _gtk_button_paint () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#37 0x0fbe62f0 in _gtk_marshal_BOOLEAN__BOXED ()
from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#38 0x0e4e0930 in g_cclosure_new_swap ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#39 0x0e4e05a4 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#40 0x0e4f5470 in g_signal_emit_by_name ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#41 0x0e4f47b0 in g_signal_emit_valist ()
from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#42 0x0e4f4d38 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#43 0x0fcebee8 in gtk_widget_send_expose () from /usr/lib/libgtk-
x11-2.0.so.0
No symbol table info available.
#44 0x0fbe4670 in gtk_propagate_event () from /usr/lib/libgtk-
x11-2.0.so.0
No symbol table info available.
#45 0x0fbe3118 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#46 0x0f9b965c in _gdk_events_queue () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#47 0x0e409c98 in g_main_depth () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#48 0x0e40b1dc in g_main_context_dispatch ()
from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#49 0x0e40b5ac in g_main_context_dispatch ()
from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#50 0x0e40bdb8 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#51 0x0fbe281c in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#52 0x0ed05010 in Gtk::Main::run_impl () from /usr/lib/libgtkmm-2.4.so.1
No symbol table info available.
#53 0x0ed04d6c in Gtk::Main::run () from /usr/lib/libgtkmm-2.4.so.1
No symbol table info available.
#54 0x10049280 in main (argc=239598596, argv=0xe480840) at main.cc:263
main_instance = <incomplete type>
authors = {<std::_Vector_base<Glib::ustring,
std::allocator<Glib::ustring> >> =
{<std::_Vector_alloc_base<Glib::ustring, std::allocator<Glib::ustring>,
true>> = {_M_start = 0xe8b35c4, _M_finish = 0x50,
_M_end_of_storage = 0x1}, <No data fields>}, <No data fields>}
documenters = {<std::_Vector_base<Glib::ustring,
std::allocator<Glib::ustring> >> =
{<std::_Vector_alloc_base<Glib::ustring, std::allocator<Glib::ustring>,
true>> = {_M_start = 0x10036f4c, _M_finish = 0x100592dc,
_M_end_of_storage = 0x10363fc0}, <No data fields>}, <No data
fields>}
instmgr = {ptr_ = 0x7fffdde0}
0x0e3ba908 373 struct iso_write_target *target = src-
>data;
On Mon, 2004-08-23 at 21:18 -0500, Derek Foreman wrote:
> On Mon, 23 Aug 2004, Bryan Forbes wrote:
>
> > I moved around my routines like you said, yet I still get a crash.
> > Here's the console output and my gdb backtrace:
> >
> > /
> > AUDIO.CC;1
> > AUDIO.H;1
> > CD_INFO.CC;1
> > CD_INFO.H;1
> > [New Thread 81926 (LWP 11478)]
> > ignored nwa: 0
> >
> > ctladr|trno|indx|form|scms| msf
> > ------+----+----+----+----+--------
> > 4 1 | 00 | 00 | 01 | 00 |00:00:00
> > 4 1 | 01 | 00 | 10 | 00 |00:00:00
> > 4 1 | 01 | 01 | 10 | 00 |00:02:00
> > 4 1 | AA | 01 | 01 | 00 |00:02:22
> > pulling from next track
> >
> > now, the backtrace (full):
> >
> > #0 0x0e3ba914 in iso_source_generate (src=0x220, buffer=0x31d1aa70 "",
> > size=2048) at libisofs/writer.c:373
> > next = 0
> > err = BURN_SOURCE_OK
> > target = (struct iso_write_target *) 0x1030d150
> > #1 0x0e69ba70 in get_bytes (src=0x1030d198, count=2048, data=0x31d1aa70
> > "")
> > at libburn/sector.c:76
> > valid = 0
> > shortage = 2048
> > more = 2048
>
> This is fascinating. Libisofs appears to return error codes instead of
> data lengths for certain situations, which is somewhat odd.
>
> Especially bad is the return value at end of track, which is a 1. Since
> you've got libburn set to pull from next track (which should work totally
> fine here), it'll try to grab 2047 more bytes from... an uninitialized
> pointer to 0x220.
>
> If you're feeling adventurous, you wanna test out a quick hack fix for me?
>
> case ISO_WRITE_DONE:
> err = BURN_SOURCE_EOF;
> break;
>
> line 417 in libisofs/writer.c is the err = BURN_SOURCE_EOF;
>
> can you try changing that to err = 0;
>
> and see what happens?
--
======================================================================
Bryan Forbes
bryan at reigndropsfall.net
http://www.reigndropsfall.net
"It does not take a majority to prevail, but rather an irate, tireless
minority keen to set brush fires in people's minds."
- Samuel Adams, an architect of the Constitution
Key fingerprint = 3D7D B728 713A BB7B B8B1 5B61 3888 17E0 70CA 0F3D
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://freedesktop.org/pipermail/libburn/attachments/20040824/bb32715b/attachment-0001.pgp
More information about the libburn
mailing list