diff options
author | is <is@pkgsrc.org> | 2006-10-13 13:04:31 +0000 |
---|---|---|
committer | is <is@pkgsrc.org> | 2006-10-13 13:04:31 +0000 |
commit | 3c0e2332b1caa63e145249c809892fbe819e5e31 (patch) | |
tree | 83aaf243a88f8bfb8d37d8354a8eaba0682d792a | |
parent | a7ebbd53714176d9185c7a8dac298c3cfce17819 (diff) | |
download | pkgsrc-3c0e2332b1caa63e145249c809892fbe819e5e31.tar.gz |
Fix fencepost error when the filename length is N*13 characters.
Contributed by Michael Eriksson in PR 25439; reviewed by Joerg
Sonnenberger.
-rw-r--r-- | sysutils/mtools/distinfo | 4 | ||||
-rw-r--r-- | sysutils/mtools/patches/patch-ai | 13 | ||||
-rw-r--r-- | sysutils/mtools/patches/patch-aj | 14 |
3 files changed, 30 insertions, 1 deletions
diff --git a/sysutils/mtools/distinfo b/sysutils/mtools/distinfo index 84fbbdfe7c0..a487413c85f 100644 --- a/sysutils/mtools/distinfo +++ b/sysutils/mtools/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.10 2006/03/25 19:50:20 joerg Exp $ +$NetBSD: distinfo,v 1.11 2006/10/13 13:04:31 is Exp $ SHA1 (mtools-3.9.10.tar.bz2) = f916e54e1bff599946bb1e72601f99096ea79456 RMD160 (mtools-3.9.10.tar.bz2) = 566d3f3e3c6201cfe750ba05826f8013778f90b9 @@ -11,3 +11,5 @@ SHA1 (patch-ae) = 5281829c8c79f95ff4672fabb53acd22685c17bb SHA1 (patch-af) = 7bb55c2c48987043b18532e56e4236d22342ca60 SHA1 (patch-ag) = 9f8b3777ba34d986580af3fc9d06b84e5548e6fa SHA1 (patch-ah) = b43f06d990e029c753659b792c4b8ec17bfbffe5 +SHA1 (patch-ai) = 8cf7cd793645ad16120faf0edd1cff2f7cb50c1c +SHA1 (patch-aj) = 176ebd3c80b9daa65765e939accbbfe31af92b96 diff --git a/sysutils/mtools/patches/patch-ai b/sysutils/mtools/patches/patch-ai new file mode 100644 index 00000000000..9df5fb37501 --- /dev/null +++ b/sysutils/mtools/patches/patch-ai @@ -0,0 +1,13 @@ +$NetBSD: patch-ai,v 1.1 2006/10/13 13:04:31 is Exp $ + +--- vfat.c.orig 2005-02-13 15:40:17.000000000 +0100 ++++ vfat.c +@@ -238,7 +238,7 @@ int write_vfat(Stream_t *Dir, char *shor + printf("Wrote checksum=%d for shortname %s.\n", + vse->sum,shortname); + #endif +- num_vses = strlen(longname)/VSE_NAMELEN + 1; ++ num_vses = (strlen(longname) + VSE_NAMELEN - 1)/VSE_NAMELEN; + for (vse_id = num_vses; vse_id; --vse_id) { + int end = 0; + diff --git a/sysutils/mtools/patches/patch-aj b/sysutils/mtools/patches/patch-aj new file mode 100644 index 00000000000..bb5d555ffa5 --- /dev/null +++ b/sysutils/mtools/patches/patch-aj @@ -0,0 +1,14 @@ +$NetBSD: patch-aj,v 1.1 2006/10/13 13:04:31 is Exp $ + +--- mk_direntry.c.orig 2005-02-28 00:17:45.000000000 +0100 ++++ mk_direntry.c +@@ -227,7 +227,8 @@ static void clear_scan(char *longname, i + s->free_end = s->got_slots = s->free_start = 0; + + if (use_longname & 1) +- s->size_needed = 2 + (strlen(longname)/VSE_NAMELEN); ++ s->size_needed = 1 + ++ (strlen(longname) + VSE_NAMELEN - 1)/VSE_NAMELEN; + else + s->size_needed = 1; + } |