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 151986 - nautilus-cdburner crashes if you try to burn with no CDR in the drive
nautilus-cdburner crashes if you try to burn with no CDR in the drive
Status: RESOLVED FIXED
Product: nautilus-cd-burner
Classification: Deprecated
Component: cd-burner
unspecified
Other Linux
: High critical
: ---
Assigned To: Nautilus CD Burner Maintainers
Nautilus CD Burner Maintainers
Depends on:
Blocks:
 
 
Reported: 2004-09-06 15:33 UTC by Matthew Gatto
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: 2.7/2.8



Description Matthew Gatto 2004-09-06 15:33:06 UTC
Steps to reproduce the crash:
1. copy some files to the CD Writer location
2. do "File -> Write to Disc" without any CDR in the drive

And it crashes. It also pops open the door to the CDRW drive. I can reproduce it
every time on HEAD.

Debugging Information:

Backtrace was generated from '/opt/gnome28/bin/nautilus-cd-burner'

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -150923872 (LWP 25101)]
0x00502402 in ?? ()

Thread 1 (Thread -150923872 (LWP 25101))

  • #0 ??
  • #1 __waitpid_nocancel
    from /lib/tls/libpthread.so.0
  • #2 libgnomeui_segv_handle
    at gnome-ui-init.c line 741
  • #3 <signal handler called>
  • #4 ??
  • #5 raise
    from /lib/tls/libc.so.6
  • #6 abort
    from /lib/tls/libc.so.6
  • #7 g_logv
  • #8 g_log
  • #9 cdrecord_stderr_read
    at cd-recorder.c line 365
  • #10 g_io_unix_dispatch
    at giounix.c line 161
  • #11 g_main_dispatch
    at gmain.c line 1942
  • #12 g_main_context_dispatch
    at gmain.c line 2492
  • #13 g_main_context_iterate
    at gmain.c line 2573
  • #14 g_main_loop_run
    at gmain.c line 2777
  • #15 cd_recorder_write_cdrecord
    at cd-recorder.c line 825
  • #16 cd_recorder_write_tracks
    at cd-recorder.c line 525
  • #17 burn_cd
    at nautilus-cd-burner.c line 711
  • #18 main
    at nautilus-cd-burner.c line 1222
  • #0 ??

Comment 1 Matthew Gatto 2004-09-06 15:59:55 UTC
These lines are printed to the X errors file:

** (nautilus-cd-burner:2913): WARNING **: No disk in drive, shouldn't happen

** ERROR **: file cd-recorder.c: line 365 (cdrecord_stderr_read): should not be
reached
aborting...
Comment 2 Bastien Nocera 2004-09-10 15:19:26 UTC
Could you run "./list_cddrives" from the command-line with the CD drive in the
same state as to reproduce the crash?
Could you also tell us which version of the Linux kernel you're using, and get
the output of nautilus-cd-burner on the command-line with
"/apps/nautilus-cd-burner/debug" enabled?
Comment 3 Matthew Gatto 2004-09-10 17:11:22 UTC
$ cat /etc/fedora-release
Fedora Core release 2 (Tettnang)

$ uname -a
Linux alkmaar 2.6.6-1.435.2.3 #1 Thu Jul 1 08:25:29 EDT 2004 i686 athlon i386
GNU/Linux

$ ./list_cddrives
name: Hewlett-Packard CD-Writer Plus 9700 device: /dev/hdc max_speed_read: 40
type: CD Recorder/CD Drive
media type: Couldn't open media
media size: -0.00 megs (approx. or 0 mins 0 secs)
CD-Recorder/SCSI devices only: max_speed_write: 40 id: /dev/hdc

name: ATAPI-CD ROM-DRIVE-52MAX device: /dev/hdd max_speed_read: 8
type: CD Drive
media type: Couldn't open media
media size: -0.00 megs (approx. or 0 mins 0 secs)
CD-Recorder/SCSI devices only: max_speed_write: 0 id: (null)

$ nautilus-cd-burner
launching command: mkisofs -r -J -q -graft-points -path-list
/tmp/iso-gnometest.DmVCSm/filelist -print-size
launching command: mkisofs -r -J -graft-points -path-list
/tmp/iso-gnometest.DmVCSm/filelist -V Personal Data, Sep 10, 2004 -o
/tmp/image.iso.3bm0zM
make_iso stderr: INFO:  UTF-8 character encoding detected by locale settings.
make_iso stderr:        Assuming UTF-8 encoded filenames on source filesystem,
make_iso stderr:        use -input-charset to override.
make_iso stderr: Total translation table size: 0
launching command: cdrecord dev=/dev/hdc -eject -v -data -nopad
/tmp/image.iso.3bm0zM
cdrecord stderr: cdrecord: No write mode specified.
cdrecord stderr: cdrecord: Asuming -tao mode.
cdrecord stderr: cdrecord: Future versions of cdrecord may have different drive
dependent defaults.
cdrecord stderr: cdrecord: Continuing in 5 seconds...
cdrecord stderr: cdrecord: Operation not permitted. WARNING: Cannot do mlockall(2).
cdrecord stderr: cdrecord: WARNING: This causes a high risk for buffer underruns.
cdrecord stderr: cdrecord: Operation not permitted. WARNING: Cannot set RR-scheduler
cdrecord stderr: cdrecord: Permission denied. WARNING: Cannot set priority using
setpriority().
cdrecord stderr: cdrecord: WARNING: This causes a high risk for buffer underruns.
cdrecord stderr: scsidev: '/dev/hdc'
cdrecord stderr: devname: '/dev/hdc'
cdrecord stderr: scsibus: -2 target: -2 lun: -2
cdrecord stderr: Warning: Open by 'devname' is unintentional and not supported.
cdrecord stderr: Linux sg driver version: 3.5.27
cdrecord stderr: cdrecord: Warning: using inofficial libscg transport code
version (schily - Red Hat-scsi-linux-sg.c-1.80-RH '@(#)scsi-linux-sg.c      
1.80 04/03/08 Copyright 1997 J. Schilling').
cdrecord stderr: SCSI buffer size: 64512
cdrecord stdout: Cdrecord-Clone 2.01a27-dvd (i686-pc-linux-gnu) Copyright (C)
1995-2004 Jörg Schilling
cdrecord stdout: Note: This version is an unofficial (modified) version with DVD
support
cdrecord stderr: cdrecord: Success. test unit ready: scsi sendcmd: no error
cdrecord stdout: Note: and therefore may have bugs that are not present in the
original.
cdrecord stderr: CDB:  00 00 00 00 00 00
cdrecord stdout: Note: Please send bug reports or support requests to
<warly@mandrakesoft.com>.
cdrecord stderr: status: 0x2 (CHECK CONDITION)
cdrecord stdout: Note: The author of cdrecord should not be bothered with
problems in this version.
cdrecord stderr: Sense Bytes: 70 00 02 00 00 00 00 0A 00 00 00 00 3A 01 00 00
cdrecord stdout: TOC Type: 1 = CD-ROM
cdrecord stderr: Sense Key: 0x2 Not Ready, Segment 0
cdrecord stdout: Using libscg version 'schily-0.8'.
cdrecord stderr: Sense Code: 0x3A Qual 0x01 (medium not present - tray closed)
Fru 0x0
cdrecord stdout: atapi: 1
cdrecord stderr: Sense flags: Blk 0 (not valid)
cdrecord stdout: Device type    : Removable CD-ROM
cdrecord stderr: cmd finished after 0.043s timeout 40s
cdrecord stdout: Version        : 2
cdrecord stderr: cdrecord: No disk / Wrong disk!

** (nautilus-cd-burner:4688): WARNING **: No disk in drive, shouldn't happen

** ERROR **: file cd-recorder.c: line 365 (cdrecord_stderr_read): should not be
reached
aborting...
Comment 4 Matthew Gatto 2004-09-10 17:20:12 UTC
The kernel is the stock fedora kernel (although not the very latest kernel
version since I can not get it to boot on this computer).
Comment 5 Matthew Gatto 2004-09-10 21:29:31 UTC
I should add that it does work OK on the gnome-2.6 ncb that's in Fedora Core 2.
Comment 6 Bastien Nocera 2004-09-16 13:29:08 UTC
There's a bug in cd_recorder_wait_for_insertion, and I can reproduce the problem.
I'll fix it tonight.
Comment 7 Bastien Nocera 2004-09-16 16:11:02 UTC
New release coming out soon, checked into CVS now.

2004-09-16  Bastien Nocera  <hadess@hadess.net>

        * .cvsignore: upd
        * cd-drive.c: (cd_drive_get_media_type_from_path): an MMC Profile
        of 0 means that there is no medium in the drive, fixes the crash
        trying to burn a CD without a CD in the drive (Closes: #151986)
        * nautilus-cd-burner.c: (ncb_hig_dialog), (insert_cd_request_cb),
        (main): swap the title/reason dialog for CD insertion to the right
        order, use the right glade file when running n-c-b from its source
        directory