Author: delphij Date: Thu Apr 4 23:34:03 2019 New Revision: 345897 URL: https://svnweb.freebsd.org/changeset/base/345897
Log: Restore lfcl when LOSTDIR's chain was corrupted and overwritten with invalid value. Obtained from: Android https://android.googlesource.com/platform/external/fsck_msdos/+/4d6d6f8a3674ad67f970e2ae908d34f64e4854cf%5E%21/ MFC after: 2 weeks Modified: head/sbin/fsck_msdosfs/dir.c Modified: head/sbin/fsck_msdosfs/dir.c ============================================================================== --- head/sbin/fsck_msdosfs/dir.c Thu Apr 4 23:32:27 2019 (r345896) +++ head/sbin/fsck_msdosfs/dir.c Thu Apr 4 23:34:03 2019 (r345897) @@ -973,6 +973,7 @@ reconnect(int dosfs, struct bootblock *boot, struct fa if (lfcl < CLUST_FIRST || lfcl >= boot->NumClusters) { /* Extend LOSTDIR? XXX */ pwarn("No space in %s\n", LOSTDIR); + lfcl = (lostDir->head < boot->NumClusters) ? lostDir->head : 0; return FSERROR; } lfoff = lfcl * boot->ClusterSize _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"