summaryrefslogtreecommitdiff
path: root/ufs
diff options
context:
space:
mode:
Diffstat (limited to 'ufs')
-rw-r--r--ufs/ChangeLog5
-rw-r--r--ufs/dir.c6
2 files changed, 10 insertions, 1 deletions
diff --git a/ufs/ChangeLog b/ufs/ChangeLog
index a83d02b8..82ada32f 100644
--- a/ufs/ChangeLog
+++ b/ufs/ChangeLog
@@ -1,3 +1,8 @@
+2000-11-30 Marcus Brinkmann <marcus@gnu.org>
+
+ * dir.c (diskfs_lookup_hard): If name is too long, clear
+ DS before returning ENAMETOOLONG.
+
2000-07-26 Mark Kettenis <kettenis@gnu.org>
* Makefile (HURDLIBS): Reorder libs such that the threads lib
diff --git a/ufs/dir.c b/ufs/dir.c
index 8077234c..2cc77398 100644
--- a/ufs/dir.c
+++ b/ufs/dir.c
@@ -126,7 +126,11 @@ diskfs_lookup_hard (struct node *dp, const char *name, enum lookup_type type,
namelen = strlen (name);
if (namelen > MAXNAMLEN)
- return ENAMETOOLONG;
+ {
+ if (ds)
+ diskfs_null_dirstat (ds);
+ return ENAMETOOLONG;
+ }
try_again:
if (ds)