From 6a921c741162471216dd8b0d8c796162082f1ec5 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Fri, 24 Feb 2023 09:01:04 +0100 Subject: [PATCH] New flag bit12 with isoburn_read_iso_head() --- libisoburn/burn_wrap.c | 4 +++- libisoburn/libisoburn.h | 3 +++ xorriso/xorriso_timestamp.h | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/libisoburn/burn_wrap.c b/libisoburn/burn_wrap.c index f08fec9d..13662841 100644 --- a/libisoburn/burn_wrap.c +++ b/libisoburn/burn_wrap.c @@ -1291,6 +1291,8 @@ int isoburn_read_iso_head_parse(unsigned char *data, 0= do not return anything in info (do not even touch it) 1= copy volume id to info (info needs 33 bytes) 2= copy 64 kB header to info (needs 65536 bytes) + bit12= read even if the start of multi-session emulation + yielded a read error bit13= do not read head from media but use first 64 kB from info bit14= check both half buffers (not only second) return 2 if found in first block @@ -1333,7 +1335,7 @@ int isoburn_read_iso_head(struct burn_drive *d, int lba, if(ret > 0 && to_read >= (off_t) (36 * 1024)) { ret= isoburn_find_emulator(&o, d, 0); if(ret > 0) - if(o->media_read_error) + if(o->media_read_error && !(flag & (1 << 12))) {ret= (-1 * !!(flag & (1 << 15))); goto ex;} if(to_read >= (off_t) (64 * 1024)) to_read= 64 * 1024; diff --git a/libisoburn/libisoburn.h b/libisoburn/libisoburn.h index ae06b362..97a2dc56 100644 --- a/libisoburn/libisoburn.h +++ b/libisoburn/libisoburn.h @@ -725,6 +725,9 @@ void isoburn_toc_disc_free(struct isoburn_toc_disc *disc); 1= copy volume id to info (info needs 33 bytes) 2= @since 0.2.2 : copy 64 kB header to info (needs 65536 bytes) + bit12= @since 1.5.6 : + Read even if the start of multi-session emulation + yielded a read error bit13= @since 0.2.2: Do not read head from medium but use first 64 kB from info. diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index f8480a8d..3e8c6449 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2023.02.08.200727" +#define Xorriso_timestamP "2023.02.24.080036"