Another, less magical solution occurred to me after I sent the previous mail. Since dvd_stat is not actually used for anything, it's possible to just check the file readability/availibility using access(2).
Patch below. I also slightly adjusted the error message. --- lsdvd.c.orig 2005-08-04 00:45:31.000000000 +0300 +++ lsdvd.c 2005-08-04 00:51:31.000000000 +0300 @@ -15,10 +15,10 @@ */ #include <dvdread/ifo_read.h> #include <string.h> -#include <sys/stat.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> +#include <errno.h> #include "lsdvd.h" static struct { char code[3]; char name[20];} @@ -192,7 +192,6 @@ char *dvd_device = "/dev/dvd"; int has_title = 0, ret = 0; int max_length = 0, max_track = 0; - struct stat dvd_stat; program_name = argv[0]; @@ -225,9 +224,9 @@ if (argv[optind]) { dvd_device = argv[optind]; } - ret = stat(dvd_device, &dvd_stat); + ret = access(dvd_device, R_OK); if ( ret < 0 ) { - fprintf(stderr, "Can't find device %s\n", dvd_device); + fprintf(stderr, "Can't open device %s: %s\n", dvd_device, strerror(errno)); return 1; } -- olli helenius <[EMAIL PROTECTED]> | [EMAIL PROTECTED] | [EMAIL PROTECTED] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]