#include <sys/time.h>
#include <sys/ioctl.h>
#include <linux/cdrom.h>
-#include "../../udev.h"
+
+#include "../../udev/udev.h"
#ifndef ARRAY_SIZE
#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
info("READ TOC: len: %d\n", len);
if (len > sizeof(toc))
return -1;
- if (len < 8)
+ if (len < 2)
return -1;
+ /* empty media has no tracks */
+ if (len < 8)
+ return 0;
+
scsi_cmd_set(&sc, 0, 0x43);
scsi_cmd_set(&sc, 6, header[2]); /* First Track/Session Number */
scsi_cmd_set(&sc, 7, len >> 8);