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 509895 - CD is not ejected after burn
CD is not ejected after burn
Status: RESOLVED FIXED
Product: brasero
Classification: Applications
Component: general
0.7.0
Other All
: Normal normal
: 0.7
Assigned To: Brasero maintainer(s)
Brasero maintainer(s)
: 510461 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2008-01-16 13:30 UTC by George Vlahavas
Modified: 2008-08-16 18:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
CD cannot be ejected log (200.27 KB, text/plain)
2008-01-16 13:31 UTC, George Vlahavas
Details
debug log (187.62 KB, text/plain)
2008-06-13 08:21 UTC, George Vlahavas
Details
Session log with failed disc eject (16.19 KB, text/plain)
2008-06-14 17:53 UTC, Mathias Brodala
Details
Debug log with failed disc eject (96.55 KB, text/plain)
2008-06-14 17:53 UTC, Mathias Brodala
Details

Description George Vlahavas 2008-01-16 13:30:34 UTC
Please describe the problem:
I maintain brasero for my distribution (zenwalk) and I have reports from some users that the CD cannot be ejected after burn at least when burning a data iso or creating a data CD. I had reports from 4 people so far.

Steps to reproduce:
1. Burn an iso image or a data CD
2. CD does not eject after burn
3. An error message window appears with "Error while burning: the media in _DEVICENAMEHERE_ can't be ejected."


Actual results:


Expected results:


Does this happen every time?
It happens every time for some users, but I can't reproduce it in my PCs. Maybe it's device specific?

Other information:
One of the users reported that this happens only when brasero is ran from a non-privileged user account. If brasero is ran as root, the CD would be ejected.

I'll attach a log that one of the users sent me.
Comment 1 George Vlahavas 2008-01-16 13:31:36 UTC
Created attachment 102993 [details]
CD cannot be ejected log
Comment 2 Luis Medinas 2008-01-17 03:12:30 UTC
is any problem with wodim/cdrecord not being suid ? Can you check some users groups and previlegs for /usr/bin/wodim or cdrecord and for the devices too.
Comment 3 George Vlahavas 2008-01-17 16:38:29 UTC
I found a PC that has the problem myself!

with cdrtools, cdrecord is -rwsr-xr-x and belongs to root:root

/dev/sr0 is brw-rw---- and belongs to root:cdrom

Could it be that we're using the new libata system for all devices, pata and sata?
Comment 4 George Vlahavas 2008-01-17 17:12:37 UTC
I've also tried cdrkit and it's still the same problem with brasero.

and "cdrecord --eject" works anyway.

And I have tried with gnomebaker and that doesn't have any problems ejecting the CD after burning...
Comment 5 George Vlahavas 2008-01-18 19:07:31 UTC
I've found that the problem goes away if I disable both md5sum plugins. But that leads to this bug: http://bugzilla.gnome.org/show_bug.cgi?id=510461
Comment 6 Luis Medinas 2008-01-21 04:08:15 UTC
ls -la /usr/bin/cdrecord 
lrwxrwxrwx 1 root root 5 2008-01-19 14:22 /usr/bin/cdrecord -> wodim

ls -la /usr/bin/wodim
-rwxr-xr-x 1 root root 394224 2008-01-16 12:48 /usr/bin/wodim

ls -la /dev/scd1
brw-rw----+ 1 root cdrom 11, 1 2008-01-19 18:08 /dev/scd1

I guess we have the same so the problem shouldn't be from there now... can you attach a log from brasero debug ?
Comment 7 Philippe Rouquier 2008-06-13 07:13:16 UTC
*** Bug 510461 has been marked as a duplicate of this bug. ***
Comment 8 George Vlahavas 2008-06-13 08:21:59 UTC
Created attachment 112665 [details]
debug log

And here's the output of brasero -g with brasero 0.7.90
I burned a disk asking to be ejected after burning, it didn't, I selected eject from the menu, still nothing.
Comment 9 Mathias Brodala 2008-06-14 17:53:15 UTC
Created attachment 112742 [details]
Session log with failed disc eject
Comment 10 Mathias Brodala 2008-06-14 17:53:36 UTC
Created attachment 112743 [details]
Debug log with failed disc eject
Comment 11 Mathias Brodala 2008-06-14 17:53:49 UTC
I’m suffering the same problem here. Session and debug log are attached.
Comment 12 Riccardo Magliocchetti 2008-07-13 11:14:02 UTC
I have the same problem with brasero svn and spent a bit of time on it.

The problem is that in burn-volume-obj.c:brasero_volume_eject() g_volume_get_drive() returns NULL, it returns NULL because (*iface->get_drive)(volume) is NULL.

I don't know anything about GIO but i see that g_volume_can_eject (volume) works fine and since gdrive is used only for this purpose maybe that function can be used instead?

With this bug brasero svn is completely unuseful for me since i've got only a drive :(
Comment 13 Riccardo Magliocchetti 2008-07-13 11:17:31 UTC
(In reply to comment #12)
> I don't know anything about GIO but i see that g_volume_can_eject (volume)
> works fine and since gdrive is used only for this purpose maybe that function
> can be used instead?

This isn't true, gdrive is necessary to eject the media.
Comment 14 Philippe Rouquier 2008-07-15 18:52:49 UTC
I really wonder why it can't find a gdrive. I re-read the logs from George Vlahavas and he has the same problem, it can't get the drive from the volume. It seems to be a GIO problem.
What version of glib have you got?
What distro are you using?
Comment 15 Mathias Brodala 2008-07-15 19:08:27 UTC
(In reply to comment #14)
> What version of glib have you got?

2.16.4

> What distro are you using?

Debian Unstable here.
Comment 16 Riccardo Magliocchetti 2008-07-15 19:19:34 UTC
(In reply to comment #15)
> (In reply to comment #14)
> > What version of glib have you got?
> 
> 2.16.4
> 
> > What distro are you using?
> 
> Debian Unstable here.

same here
Comment 17 Philippe Rouquier 2008-07-15 19:19:52 UTC
I also committed some changes to try to fix that problem. Basically as you suggested Riccardo, we also check if we can use g_volume_eject ().
Comment 18 Philippe Rouquier 2008-07-16 11:29:44 UTC
Same version of glib on my install.
Now since gio is more than often a simple frontend for gvfs, it could be that the problem comes from gvfs instead. I have 0.2.5, what about guys?

Btw please test the change I mentioned above to see if it improves things.
Comment 19 Riccardo Magliocchetti 2008-07-16 12:12:53 UTC
(In reply to comment #18)
> Same version of glib on my install.
> Now since gio is more than often a simple frontend for gvfs, it could be that
> the problem comes from gvfs instead. I have 0.2.5, what about guys?

I don't have gvfs, so this one is an issue of gio with (i suppose) the kernel backend?

> Btw please test the change I mentioned above to see if it improves things.

Latest svn trunk works fine, i see this so it is correctly ejected by the volume. 

(brasero:21408): GLib-GIO-CRITICAL **: g_drive_can_eject: assertion `G_IS_DRIVE (drive)' failed

Thank you Philippe
Comment 20 Philippe Rouquier 2008-07-16 13:42:06 UTC
@Ricardo, the fact that you didn't have gvfs installed was the problem. You'd better have it installed as a general rule since it adds some functionalities among which HAL that is really important (as you can imagine) when an app is dealing with devices.

Anyway, I'm glad that change works. I'll wait for the other reporters' answers before closing this bug.
I made another change to silence the remaining warning.
Comment 21 Philippe Rouquier 2008-08-16 18:50:56 UTC
Closing this bug. If someone doesn't agree, please reopen the bug.