From: Yu Watanabe Date: Sat, 13 Aug 2022 21:00:10 +0000 (+0900) Subject: udev/cdrom_id: check last track info X-Git-Tag: v252-rc1~448 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=628998ecfa0d39b38874e1aecdb28022f80f3269;p=thirdparty%2Fsystemd.git udev/cdrom_id: check last track info Fixes off-by-one issue. Fixes #24306. --- diff --git a/src/udev/cdrom_id/cdrom_id.c b/src/udev/cdrom_id/cdrom_id.c index 85cf5201c6a..d2c12621218 100644 --- a/src/udev/cdrom_id/cdrom_id.c +++ b/src/udev/cdrom_id/cdrom_id.c @@ -704,7 +704,7 @@ static int cd_media_toc(Context *c) { /* Take care to not iterate beyond the last valid track as specified in * the TOC, but also avoid going beyond the TOC length, just in case * the last track number is invalidly large */ - for (size_t i = 4; i + 8 < len && num_tracks > 0; i += 8, --num_tracks) { + for (size_t i = 4; i + 8 <= len && num_tracks > 0; i += 8, --num_tracks) { bool is_data_track; uint32_t block;