Fix renaming in the root directory by correctly setting directory
authorkrw <krw@openbsd.org>
Fri, 23 Oct 2015 18:04:37 +0000 (18:04 +0000)
committerkrw <krw@openbsd.org>
Fri, 23 Oct 2015 18:04:37 +0000 (18:04 +0000)
offset.

From Serguey Parkhomovsky via bugs@, in response to problem report
from matthieu@. Same fix is in NetBSD for one.

ok tedu@

sys/msdosfs/msdosfs_vnops.c

index 55e50c2..d042cb1 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: msdosfs_vnops.c,v 1.103 2015/10/23 17:21:34 krw Exp $ */
+/*     $OpenBSD: msdosfs_vnops.c,v 1.104 2015/10/23 18:04:37 krw Exp $ */
 /*     $NetBSD: msdosfs_vnops.c,v 1.63 1997/10/17 11:24:19 ws Exp $    */
 
 /*-
@@ -1191,8 +1191,9 @@ abortit:
                                        VOP_UNLOCK(fdvp, 0, p);
                                goto bad;
                        }
+                       ip->de_diroffset = to_diroffset;
                        if (ip->de_dirclust != MSDOSFSROOT)
-                               ip->de_diroffset = to_diroffset & pmp->pm_crbomask;
+                               ip->de_diroffset &= pmp->pm_crbomask;
                }
                reinsert(ip);
                if (newparent)