[arch-commits] Commit in dosfstools/trunk (2 files)

Tobias Powalowski tpowa at archlinux.org
Wed Jan 2 14:43:48 UTC 2013


    Date: Wednesday, January 2, 2013 @ 09:43:48
  Author: tpowa
Revision: 174136

upgpkg: dosfstools 3.0.13-2

fix #33248

Added:
  dosfstools/trunk/dosfstools-3.0.12-fix-alloc-rootdir-entry.patch
Modified:
  dosfstools/trunk/PKGBUILD

-------------------------------------------------+
 PKGBUILD                                        |   10 ++++++--
 dosfstools-3.0.12-fix-alloc-rootdir-entry.patch |   25 ++++++++++++++++++++++
 2 files changed, 32 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2013-01-02 14:21:11 UTC (rev 174135)
+++ PKGBUILD	2013-01-02 14:43:48 UTC (rev 174136)
@@ -3,18 +3,21 @@
 # Committer: Judd Vinet <jvinet at zeroflux.org>
 pkgname=dosfstools
 pkgver=3.0.13
-pkgrel=1
+pkgrel=2
 pkgdesc="DOS filesystem utilities"
 arch=(i686 x86_64)
 depends=('glibc')
 #source=(http://www.daniel-baumann.ch/software/dosfstools/$pkgname-$pkgver.tar.xz)
 # using debian source, main page is down since quite some time
-source=(http://ftp.de.debian.org/debian/pool/main/d/dosfstools/dosfstools_3.0.13.orig.tar.xz)
+source=(http://ftp.de.debian.org/debian/pool/main/d/dosfstools/dosfstools_3.0.13.orig.tar.xz
+        dosfstools-3.0.12-fix-alloc-rootdir-entry.patch)
 url="http://www.daniel-baumann.ch/software/dosfstools/"
 license=('GPL2')
 
 build() {
    cd $srcdir/$pkgname-$pkgver
+   # fix https://bugs.archlinux.org/task/33248
+   patch -Np1 -i ${srcdir}/dosfstools-3.0.12-fix-alloc-rootdir-entry.patch
    make
 }
 
@@ -22,4 +25,5 @@
    cd $srcdir/$pkgname-$pkgver
    make PREFIX=$pkgdir MANDIR=$pkgdir/usr/share/man DOCDIR=$pkgdir/usr/share/doc install
 }
-md5sums=('c1d851e3fc065a935c7cf919545d239f')
+md5sums=('c1d851e3fc065a935c7cf919545d239f'
+         'c2be6f2cd1d47297b2d6a8ba237e04eb')

Added: dosfstools-3.0.12-fix-alloc-rootdir-entry.patch
===================================================================
--- dosfstools-3.0.12-fix-alloc-rootdir-entry.patch	                        (rev 0)
+++ dosfstools-3.0.12-fix-alloc-rootdir-entry.patch	2013-01-02 14:43:48 UTC (rev 174136)
@@ -0,0 +1,25 @@
+--- dosfstools-3.0.12/src/check.c.old	2010-01-23 10:13:17.000000000 +0100
++++ dosfstools-3.0.12/src/check.c	2011-01-31 17:43:31.462674941 +0100
+@@ -174,7 +174,10 @@
+ 	offset = fs->root_start + next_free * sizeof(DIR_ENT);
+ 	memset(de, 0, sizeof(DIR_ENT));
+ 	while (1) {
+-	    sprintf((char *)de->name, pattern, curr_num);
++	    char expanded[12];
++	    sprintf(expanded, pattern, curr_num);
++	    memcpy(de->name, expanded, 8);
++	    memcpy(de->ext, expanded + 8, 3);
+	    for (scan = 0; scan < fs->root_entries; scan++)
+ 		if (scan != next_free &&
+ 		    !strncmp((const char *)root[scan].name,
+--- dosfstools-3.0.12/src/fat.c
++++ dosfstools-3.0.12/src/fat.c
+@@ -474,7 +474,7 @@ void reclaim_file(DOS_FS * fs)
+ 	    DIR_ENT de;
+ 	    loff_t offset;
+ 	    files++;
+-	    offset = alloc_rootdir_entry(fs, &de, "FSCK%04d");
++	    offset = alloc_rootdir_entry(fs, &de, "FSCK%04dREC");
+ 	    de.start = CT_LE_W(i & 0xffff);
+	    if (fs->fat_bits == 32)
+ 		de.starthi = CT_LE_W(i >> 16);




More information about the arch-commits mailing list