summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin T. Gibbs <gibbs@FreeBSD.org>1994-11-07 01:14:57 +0000
committerJustin T. Gibbs <gibbs@FreeBSD.org>1994-11-07 01:14:57 +0000
commite59e99cc192c59337932fd0f033ab5b18dc180c4 (patch)
tree9dd424e2d315e3f6a8c22cd905cd1f3224adf12d
parentAdd xanim to SUBDIRS. (diff)
Make the eject function work. This requires using the CDIOCALLOW ioctl
before the CDIOCEJECT ioctl otherwise the media is still locked when you attempt the eject. The previous code may have worked on drives that did not support the media lock feature.
Notes
Notes: svn path=/head/; revision=335
-rw-r--r--audio/xcdplayer/files/cdrom_freebsd.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/audio/xcdplayer/files/cdrom_freebsd.c b/audio/xcdplayer/files/cdrom_freebsd.c
index c65d2571b18c..d723b81b36a9 100644
--- a/audio/xcdplayer/files/cdrom_freebsd.c
+++ b/audio/xcdplayer/files/cdrom_freebsd.c
@@ -174,6 +174,11 @@ cdrom_eject() {
if (cdrom_fd == -1)
return(-1);
+ if (ioctl(cdrom_fd, CDIOCALLOW) == -1) {
+ perror("ioctl(cdromallow)");
+ return(-1);
+ }
+
if (ioctl(cdrom_fd, CDIOCEJECT) == -1) {
perror("ioctl(cdromeject)");
return(-1);