Index: vfs_journal.c
===================================================================
RCS file: /home/dcvs/src/sys/kern/vfs_journal.c,v
retrieving revision 1.31
diff -u -r1.31 vfs_journal.c
--- vfs_journal.c	12 Jan 2007 06:06:57 -0000	1.31
+++ vfs_journal.c	24 Jan 2007 14:23:21 -0000
@@ -1160,7 +1160,8 @@
 again:
     pathlen = 0;
     for (scan = ncp; scan; scan = scan->nc_parent) {
-	pathlen += scan->nc_nlen + 1;
+	if (scan->nc_nlen > 0)
+	    pathlen += scan->nc_nlen + 1;
     }
 
     if (pathlen <= sizeof(buf))
@@ -1173,6 +1174,8 @@
      */
     index = pathlen;
     for (scan = ncp; scan; scan = scan->nc_parent) {
+	if (scan->nc_nlen == 0)
+	    continue;
 	if (scan->nc_nlen >= index) {
 	    if (base != buf)
 		kfree(base, M_TEMP);
