From 6465e03fc2f7232ed3eb10bbc0657e926756c61b Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Tue, 29 Mar 2022 00:07:08 -0300 Subject: [PATCH] Virtual ISO: Fix oversight in Rock Ridge file times --- src/cdrom/cdrom_image_viso.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/cdrom/cdrom_image_viso.c b/src/cdrom/cdrom_image_viso.c index f2b6aa676..f7677e8be 100644 --- a/src/cdrom/cdrom_image_viso.c +++ b/src/cdrom/cdrom_image_viso.c @@ -452,12 +452,14 @@ viso_fill_dir_record(uint8_t *data, viso_entry_t *entry, int type) *q |= 0x80; /* TF = timestamps */ *p++ = 'T'; *p++ = 'F'; - *p++ = 5 + (7 * (!!entry->stats.st_mtime + !!entry->stats.st_atime + !!entry->stats.st_ctime)); /* length */ - *p++ = 1; /* version */ + *p++ = 5 + (7 * (VISO_TIME_VALID(entry->stats.st_mtime) + /* length: modified */ + VISO_TIME_VALID(entry->stats.st_atime) + /* + access */ + VISO_TIME_VALID(entry->stats.st_ctime))); /* + attributes */ + *p++ = 1; /* version */ *p++ = (VISO_TIME_VALID(entry->stats.st_mtime) << 1) | /* flags: modify */ - (VISO_TIME_VALID(entry->stats.st_atime) << 2) | /* flags: access */ - (VISO_TIME_VALID(entry->stats.st_ctime) << 3); /* flags: attributes */ + (VISO_TIME_VALID(entry->stats.st_atime) << 2) | /* + access */ + (VISO_TIME_VALID(entry->stats.st_ctime) << 3); /* + attributes */ if (VISO_TIME_VALID(entry->stats.st_mtime)) p += viso_fill_time(p, entry->stats.st_mtime, 0); /* modify */ if (VISO_TIME_VALID(entry->stats.st_atime))