-struct source {
- dvd_reader_t *dvd;
- int dvdfd;
- struct file *file;
- dvd_file_t *vob;
-
- unsigned f;
-#define SRCF_ALLPROGRESS 1u
- secaddr last_pos, limit, nsectors, ndone;
- struct timeval last_time;
- double wsum, wcount;
- const char *mapfile; FILE *mapfp;
-};
-#define SOURCE_INIT { 0, -1, 0, 0, 0, 0, 0, 0, 0, { 0, 0 }, 0.0, 0.0, 0, 0 }
-
-static void report_progress(struct source *src, secaddr pos)
+static dvd_reader_t *dvd;
+static int dvdfd = -1;
+static struct file *file;
+static dvd_file_t *vob;
+
+unsigned flags;
+# define F_ALLPROGRESS 1u
+static secaddr last_pos, limit, nsectors, ndone;
+static struct timeval last_time;
+static double wsum, wcount;
+static const char *mapfile; static FILE *mapfp;
+
+static void report_progress(secaddr pos)