After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 665881 - Crashes on extract with USB CD ROM, "Could not lock drive", "free(): invalid pointer"
Crashes on extract with USB CD ROM, "Could not lock drive", "free(): invalid ...
Status: RESOLVED FIXED
Product: sound-juicer
Classification: Applications
Component: ripping
2.32.x
Other Linux
: Normal normal
: ---
Assigned To: Sound Juicer Maintainers
Sound Juicer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-12-09 18:08 UTC by Richard Schwarting
Modified: 2013-06-19 21:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Don't try to free an uninitialized pointer (1.12 KB, patch)
2013-04-06 19:16 UTC, Christophe Fergeau
committed Details | Review

Description Richard Schwarting 2011-12-09 18:08:52 UTC
I used to be able to use my CD ROM to extract music from CDs.  Now, I am getting a crash. I think it last worked with 2.30.

Sound Juicer can still play music, but clicking extract causes the error at the bottom.

I've tried this on two CDs and it's the same in both cases:
* The Legend of Zelda 25th Anniversary Special Orchestra CD
* a mixed CD by a friend (to which Sound Juicer keeps trying to assign track names from the last valid CD)

The second CD was formerly successful at extraction.

------------

** (sound-juicer:2486): WARNING **: Could not lock drive: H\x85\xedI\x89\xc4H\x8bs\u0010t6L\x89\xe7H\x89\xe8H\x8b\u001c$H\x8bl$\u0008L\x8bd$\u0010H\x83\xc4\u0018\xff\xe0\u000f\u001f\x84
*** glibc detected *** sound-juicer: free(): invalid pointer: 0x000000323120fea2 ***
======= Backtrace: =========
/lib64/libc.so.6[0x322e27c2d6]
/lib64/libglib-2.0.so.0(g_free+0x23)[0x323024b793]
sound-juicer(on_extract_activate+0x368)[0x417128]
/lib64/libgobject-2.0.so.0(g_closure_invoke+0x154)[0x323120ea24]
/lib64/libgobject-2.0.so.0[0x3231220d17]
/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0x851)[0x323122a141]
/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x323122a2e2]
/usr/lib64/libgtk-3.so.0[0x323969604d]
/lib64/libgobject-2.0.so.0(g_closure_invoke+0x154)[0x323120ea24]
/lib64/libgobject-2.0.so.0[0x3231220527]
/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0x851)[0x323122a141]
/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x323122a2e2]
/usr/lib64/libgtk-3.so.0[0x3239694fed]
/usr/lib64/libgtk-3.so.0[0x32397526c8]
/lib64/libgobject-2.0.so.0(g_closure_invoke+0x154)[0x323120ea24]
/lib64/libgobject-2.0.so.0[0x3231220b5c]
/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0x623)[0x3231229f13]
/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x323122a2e2]
/usr/lib64/libgtk-3.so.0[0x323987ef49]
/usr/lib64/libgtk-3.so.0(gtk_propagate_event+0xca)[0x3239751e6a]
/usr/lib64/libgtk-3.so.0(gtk_main_do_event+0x32b)[0x323975226b]
/usr/lib64/libgdk-3.so.0[0x32392474d2]
/lib64/libglib-2.0.so.0(g_main_context_dispatch+0x1dd)[0x3230244a7d]
/lib64/libglib-2.0.so.0[0x3230245278]
/lib64/libglib-2.0.so.0(g_main_loop_run+0x175)[0x32302457c5]
/usr/lib64/libgtk-3.so.0(gtk_main+0x8d)[0x32397516ad]
sound-juicer(main+0xf99)[0x40f3c9]
/lib64/libc.so.6(__libc_start_main+0xed)[0x322e22169d]
sound-juicer[0x40f645]
======= Memory map: ========
00400000-00427000 r-xp 00000000 fd:01 137404                             /usr/bin/sound-juicer
00626000-00632000 rw-p 00026000 fd:01 137404                             /usr/bin/sound-juicer
00d5a000-014f6000 rw-p 00000000 00:00 0                                  [heap]
31e1400000-31e1404000 r-xp 00000000 fd:01 146961                         /lib64/libuuid.so.1.3.0
31e1404000-31e1603000 ---p 00004000 fd:01 146961                         /lib64/libuuid.so.1.3.0
31e1603000-31e1604000 r--p 00003000 fd:01 146961                         /lib64/libuuid.so.1.3.0
31e1604000-31e1605000 rw-p 00004000 fd:01 146961                         /lib64/libuuid.so.1.3.0
31e1800000-31e1807000 r-xp 00000000 fd:01 135611                         /usr/lib64/libSM.so.6.0.1
31e1807000-31e1a06000 ---p 00007000 fd:01 135611                         /usr/lib64/libSM.so.6.0.1
31e1a06000-31e1a07000 rw-p 00006000 fd:01 135611                         /usr/lib64/libSM.so.6.0.1
31e2800000-31e2841000 r-xp 00000000 fd:01 148155                         /usr/lib64/libpulse.so.0.12.4
31e2841000-31e2a40000 ---p 00041000 fd:01 148155                         /usr/lib64/libpulse.so.0.12.4
31e2a40000-31e2a41000 r--p 00040000 fd:01 148155                         /usr/lib64/libpulse.so.0.12.4
31e2a41000-31e2a42000 rw-p 00041000 fd:01 148155                         /usr/lib64/libpulse.so.0.12.4
31e3000000-31e304e000 r-xp 00000000 fd:01 145890                         /usr/lib64/libpulsecommon-0.9.23.so
31e304e000-31e324d000 ---p 0004e000 fd:01 145890                         /usr/lib64/libpulsecommon-0.9.23.so
31e324d000-31e324e000 r--p 0004d000 fd:01 145890                         /usr/lib64/libpulsecommon-0.9.23.so
31e324e000-31e3250000 rw-p 0004e000 fd:01 145890                         /usr/lib64/libpulsecommon-0.9.23.so
322de00000-322de22000 r-xp 00000000 fd:01 135472                         /lib64/ld-2.14.90.so
322e021000-322e022000 r--p 00021000 fd:01 135472                         /lib64/ld-2.14.90.so
322e022000-322e023000 rw-p 00022000 fd:01 135472                         /lib64/ld-2.14.90.so
322e023000-322e024000 rw-p 00000000 00:00 0 
322e200000-322e3aa000 r-xp 00000000 fd:01 135618                         /lib64/libc-2.14.90.so
322e3aa000-322e5aa000 ---p 001aa000 fd:01 135618                         /lib64/libc-2.14.90.so
322e5aa000-322e5ae000 r--p 001aa000 fd:01 135618                         /lib64/libc-2.14.90.so
322e5ae000-322e5b0000 rw-p 001ae000 fd:01 135618                         /lib64/libc-2.14.90.so
322e5b0000-322e5b5000 rw-p 00000000 00:00 0 
322e600000-322e683000 r-xp 00000000 fd:01 135965                         /lib64/libm-2.14.90.so
322e683000-322e882000 ---p 00083000 fd:01 135965                         /lib64/libm-2.14.90.so
322e882000-322e883000 r--p 00082000 fd:01 135965                         /lib64/libm-2.14.90.so
322e883000-322e884000 rw-p 00083000 fd:01 135965                         /lib64/libm-2.14.90.so
322ea00000-322ea17000 r-xp 00000000 fd:01 135921                         /lib64/libpthread-2.14.90.so
322ea17000-322ec16000 ---p 00017000 fd:01 135921                         /lib64/libpthread-2.14.90.so
322ec16000-322ec17000 r--p 00016000 fd:01 135921                         /lib64/libpthread-2.14.90.so
322ec17000-322ec18000 rw-p 00017000 fd:01 135921                         /lib64/libpthread-2.14.90.so
322ec18000-322ec1c000 rw-p 00000000 00:00 0 
322ee00000-322ee02000 r-xp 00000000 fd:01 142074                         /lib64/libdl-2.14.90.so
322ee02000-322f002000 ---p 00002000 fd:01 142074                         /lib64/libdl-2.14.90.so
322f002000-322f003000 r--p 00002000 fd:01 142074                         /lib64/libdl-2.14.90.so
322f003000-322f004000 rw-p 00003000 fd:01 142074                         /lib64/libdl-2.14.90.so
322f200000-322f207000 r-xp 00000000 fd:01 142079                         /lib64/librt-2.14.90.so
322f207000-322f406000 ---p 00007000 fd:01 142079                         /lib64/librt-2.14.90.so
322f406000-322f407000 r--p 00006000 fd:01 142079                         /lib64/librt-2.14.90.so
322f407000-322f408000 rw-p 00007000 fd:01 142079                         /lib64/librt-2.14.90.so
322f600000-322f617000 r-xp 00000000 fd:01 140108                         /lib64/libz.so.1.2.5
322f617000-322f816000 ---p 00017000 fd:01 140108                         /lib64/libz.so.1.2.5
322f816000-322f817000 rw-p 00016000 fd:01 140108                         /lib64/libz.so.1.2.5
322fa00000-322fa15000 r-xp 00000000 fd:01 142075                         /lib64/libgcc_s-4.6.2-20111027.so.1
322fa15000-322fc14000 ---p 00015000 fd:01 142075                         /lib64/libgcc_s-4.6.2-20111027.so.1
322fc14000-322fc15000 rw-p 00014000 fd:01 142075                         /lib64/libgcc_s-4.6.2-20111027.so.1
322fe00000-322fe1d000 r-xp 00000000 fd:01 142088                         /lib64/libselinux.so.1
322fe1d000-323001d000 ---p 0001d000 fd:01 142088                         /lib64/libselinux.so.1
323001d000-323001e000 r--p 0001d000 fd:01 142088                         /lib64/libselinux.so.1
323001e000-323001f000 rw-p 0001e000 fd:01 142088                         /lib64/libselinux.so.1
323001f000-3230020000 rw-p 00000000 00:00 0 
3230200000-323031e000 r-xp 00000000 fd:01 142080                         /lib64/libglib-2.0.so.0.3000.1
323031e000-323051d000 ---p 0011e000 fd:01 142080                         /lib64/libglib-2.0.so.0.3000.1
323051d000-323051e000 r--p 0011d000 fd:01 142080                         /lib64/libglib-2.0.so.0.3000.1
323051e000-323051f000 rw-p 0011e000 fd:01 142080                         /lib64/libglib-2.0.so.0.3000.1
323051f000-3230520000 rw-p 00000000 00:00 0 
3230600000-3230604000 r-xp 00000000 fd:01 142081                         /lib64/libgthread-2.0.so.0.3000.1
3230604000-3230803000 ---p 00004000 fd:01 142081                         /lib64/libgthread-2.0.so.0.3000.1
3230803000-3230804000 r--p 00003000 fd:01 142081                         /lib64/libgthread-2.0.so.0.3000.1
3230804000-3230805000 rw-p 00004000 fd:01 142081                         /lib64/libgthread-2.0.so.0.3000.1
3230a00000-3230a18000 r-xp 00000000 fd:01 142089                         /lib64/libresolv-2.14.90.so
3230a18000-3230c18000 ---p 00018000 fd:01 142089                         /lib64/libresolv-2.14.90.so
3230c18000-3230c19000 r--p 00018000 fd:01 142089                         /lib64/libresolv-2.14.90.so
3230c19000-3230c1a000 rw-p 00019000 fd:01 142089                         /lib64/libresolv-2.14.90.so
3230c1a000-3230c1c000 rw-p 00000000 00:00 0 
3230e00000-3230e07000 r-xp 00000000 fd:01 142082                         /usr/lib64/libffi.so.5.0.10
3230e07000-3231006000 ---p 00007000 fd:01 142082                         /usr/lib64/libffi.so.5.0.10
3231006000-3231007000 r--p 00006000 fd:01 142082                         /usr/lib64/libffi.so.5.0.10
3231007000-3231008000 rw-p 00007000 fd:01 142082                         /usr/lib64/libffi.so.5.0.10
3231200000-323124c000 r-xp 00000000 fd:01 142083                         /lib64/libgobject-2.0.so.0.3000.1
323124c000-323144c000 ---p 0004c000 fd:01 142083                         /lib64/libgobject-2.0.so.0.3000.1
323144c000-323144d000 r--p 0004c000 fd:01 142083                         /lib64/libgobject-2.0.so.0.3000.1
323144d000-323144e000 rw-p 0004d000 fd:01 142083                         /lib64/libgobject-2.0.so.0.3000.1
323144e000-323144f000 rw-p 00000000 00:00 0 
3231600000-3231603000 r-xp 00000000 fd:01 142084                         /lib64/libgmodule-2.0.so.0.3000.1
3231603000-3231802000 ---p 00003000 fd:01 142084                         /lib64/libgmodule-2.0.so.0.3000.1
3231802000-3231803000 r--p 00002000 fd:01 142084                         /lib64/libgmodule-2.0.so.0.3000.1
3231803000-3231804000 rw-p 00003000 fd:01 142084                         /lib64/libgmodule-2.0.so.0.3000.1
3231a00000-3231b39000 r-xp 00000000 fd:01 142090                         /lib64/libgio-2.0.so.0.3000.1
3231b39000-3231d38000 ---p 00139000 fd:01 142090                         /lib64/libgio-2.0.so.0.3000.1
3231d38000-3231d3c000 r--p 00138000 fd:01 142090                         /lib64/libgio-2.0.so.0.3000.1
3231d3c000-3231d3e000 rw-p 0013c000 fd:01 142090                         /lib64/libgio-2.0.so.0.3000.1
3231d3e000-3231d40000 rw-p 00000000 00:00 0 
3231e00000-3231e43000 r-xp 00000000 fd:01 142148                         /lib64/libdbus-1.so.3.5.6
3231e43000-3232042000 ---p 00043000 fd:01 142148                         /lib64/libdbus-1.so.3.5.6
3232042000-3232043000 r--p 00042000 fd:01 142148                         /lib64/libdbus-1.so.3.5.6
3232043000-3232044000 rw-p 00043000 fd:01 142148                         /lib64/libdbus-1.so.3.5.6
3232200000-3232339000 r-xp 00000000 fd:01 142076                         /usr/lib64/libX11.so.6.3.0
3232339000-3232538000 ---p 00139000 fd:01 142076                         /usr/lib64/libX11.so.6.3.0
3232538000-323253e000 rw-p 00138000 fd:01 142076                         /usr/lib64/libX11.so.6.3.0
3232600000-3232602000 r-xp 00000000 fd:01 142072                         /usr/lib64/libXau.so.6.0.0
3232602000-3232802000 ---p 00002000 fd:01 142072                         /usr/lib64/libXau.so.6.0.0
3232802000-3232803000 rw-p 00002000 fd:01 142072                         /usr/lib64/libXau.so.6.0.0
3232a00000-3232a1b000 r-xp 00000000 fd:01 142073                         /usr/lib64/libxcb.so.1.1.0
3232a1b000-3232c1a000 ---p 0001b000 fd:01 142073                         /usr/lib64/libxcb.so.1.1.0
3232c1a000-3232c1b000 rw-p 0001a000 fd:01 142073                         /usr/lib64/libxcb.so.1.1.0
3232e00000-3232e11000 r-xp 00000000 fd:01 142091                         /usr/lib64/libXext.so.6.4.0
3232e11000-3233011000 ---p 00011000 fd:01 142091                         /usr/lib64/libXext.so.6.4.0
3233011000-3233012000 rw-p 00011000 fd:01 142091                         /usr/lib64/libXext.so.6.4.0
3233200000-3233299000 r-xp 00000000 fd:01 137221                         /usr/lib64/libfreetype.so.6.7.1
3233299000-3233498000 ---p 00099000 fd:01 137221                         /usr/lib64/libfreetype.so.6.7.1
3233498000-323349e000 r--p 00098000 fd:01 137221                         /usr/lib64/libfreetype.so.6.7.1
323349e000-323349f000 rw-p 0009e000 fd:01 137221                         /usr/lib64/libfreetype.so.6.7.1
3233600000-3233627000 r-xp 00000000 fd:01 139964                         /lib64/libexpat.so.1.5.2
3233627000-3233826000 ---p 00027000 fd:01 139964                         /lib64/libexpat.so.1.5.2
3233826000-3233829000 rw-p 00026000 fd:01 139964                         /lib64/libexpat.so.1.5.2
3233a00000-3233a26000 r-xp 00000000 fd:01 142071                         /usr/lib64/libpng12.so.0.46.0
3233a26000-3233c25000 ---p 00026000 fd:01 142071                         /usr/lib64/libpng12.so.0.46.0
3233c25000-3233c26000 r--p 00025000 fd:01 142071                         /usr/lib64/libpng12.so.0.46.0
3233c26000-3233c27000 rw-p 00026000 fd:01 142071                         /usr/lib64/libpng12.so.0.46.0
3233e00000-3233e34000 r-xp 00000000 fd:01 140053                         /usr/lib64/libfontconfig.so.1.4.4
3233e34000-3234033000 ---p 00034000 fd:01 140053                         /usr/lib64/libfontconfig.so.1.4.4
3234033000-3234035000 rw-p 00033000 fd:01 140053                         /usr/lib64/libfontconfig.so.1.4.4
3234200000-3234350000 r-xp 00000000 fd:01 142106                         /usr/lib64/libxml2.so.2.7.8
3234350000-3234550000 ---p 00150000 fd:01 142106                         /usr/lib64/libxml2.so.2.7.8
3234550000-3234559000 rw-p 00150000 fd:01 142106                         /usr/lib64/libxml2.so.2.7.8
3234559000-323455b000 rw-p 00000000 00:00 0 
3234600000-323460f000 r-xp 00000000 fd:01 142093                         /usr/lib64/libXi.so.6.1.0
323460f000-323480e000 ---p 0000f000 fd:01 142093                         /usr/lib64/libXi.so.6.1.0
323480e000-323480f000 r--p 0000e000 fd:01 142093                         /usr/lib64/libXi.so.6.1.0
323480f000-3234810000 rw-p 0000f000 fd:01 142093                         /usr/lib64/libXi.so.6.1.0
3234a00000-3234a25000 r-xp 00000000 fd:01 142166                         /usr/lib64/libdbus-glib-1.so.2.1.0
3234a25000-3234c24000 ---p 00025000 fd:01 142166                         /usr/lib64/libdbus-glib-1.so.2.1.0
3234c24000-3234c26000 rw-p 00024000 fd:01 142166                         /usr/lib64/libdbus-glib-1.so.2.1.0
3234e00000-3234e09000 r-xp 00000000 fd:01 142077                         /usr/lib64/libXrender.so.1.3.0
3234e09000-3235009000 ---p 00009000 fd:01 142077                         /usr/lib64/libXrender.so.1.3.0
3235009000-323500a000 rw-p 00009000 fd:01 142077                         /usr/lib64/libXrender.so.1.3.0
3235200000-3235221000 r-xp 00000000 fd:01 142099                         /usr/lib64/libgdk_pixbuf-2.0.so.0.2400.0
3235221000-3235420000 ---p 00021000 fd:01 142099                         /usr/lib64/libgdk_pixbuf-2.0.so.0.2400.0
3235420000-3235421000 r--p 00020000 fd:01 142099                         /usr/lib64/libgdk_pixbuf-2.0.so.0.2400.0
3235421000-3235422000 rw-p 00021000 fd:01 142099                         /usr/lib64/libgdk_pixbuf-2.0.so.0.2400.0
3235600000-323566f000 r-xp 00000000 fd:01 137178                         /usr/lib64/libpixman-1.so.0.22.2
323566f000-323586f000 ---p 0006f000 fd:01 137178                         /usr/lib64/libpixman-1.so.0.22.2
323586f000-3235874000 r--p 0006f000 fd:01 137178                         /usr/lib64/libpixman-1.so.0.22.2Abgebrochen
Comment 1 Richard Schwarting 2011-12-09 20:12:19 UTC
Also, 
* rhythmbox can extract the tracks successfully.
Comment 2 Christophe Fergeau 2013-04-06 19:16:27 UTC
Created attachment 240858 [details] [review]
Don't try to free an uninitialized pointer

brasero_drive_lock() is documented as filling a 'reason_for_failure'
arg with a description string when an error occurs. However, the
method does nothing with this parameter, it does not even initialize
it. Let's set 'reason' to NULL before passing it to
brasero_drive_lock() to ensure that at worse calling g_free() on it
will be a no-op.
Comment 3 Bastien Nocera 2013-04-24 16:09:33 UTC
Review of attachment 240858 [details] [review]:

++
Comment 4 Christophe Fergeau 2013-06-19 21:03:31 UTC
Attachment 240858 [details] pushed as d51b2b8 - Don't try to free an uninitialized pointer