dvd-sector-copy.c (read_sectors): Force `errno' to zero even if WANT = 0.
authorMark Wooding <mdw@distorted.org.uk>
Fri, 8 Apr 2022 15:45:03 +0000 (16:45 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 8 Apr 2022 15:52:15 +0000 (16:52 +0100)
Otherwise we'd get confused at the end.  I don't think anything actually
tries to call `read_sectors' with WANT = 0, but it's better not to leave
a booby trap here.

dvd-sector-copy.c

index ee89f2a..abab0b3 100644 (file)
@@ -336,7 +336,8 @@ static ssize_t read_sectors(secaddr pos, void *buf, secaddr want)
     if (best && pos + want > best->start)
       { want = best->start - pos; fakeerr = EIO; sit(bad_block_delay); }
   }
-  done = 0;
+
+  done = 0; errno = 0;
   while (want) {
     if (vob)
       { errno = 0; n = DVDReadBlocks(vob, pos - file->start, want, p); }