summaryrefslogtreecommitdiff
path: root/libdiskfs/node-drop.c
diff options
context:
space:
mode:
authorMichael I. Bushnell <mib@gnu.org>1996-07-06 17:32:52 +0000
committerMichael I. Bushnell <mib@gnu.org>1996-07-06 17:32:52 +0000
commitd9185de6346a26b7b4d3095e7e89352f364b0572 (patch)
treed8061c03487b34e824fd4f799733727d746cfe1d /libdiskfs/node-drop.c
parentc544839b432a7a26a9f69e4cdb380f332eeb0cab (diff)
(diskfs_drop_node): If this might be a special symlink, then truncate
it even though NP->allocsize might be clear.
Diffstat (limited to 'libdiskfs/node-drop.c')
-rw-r--r--libdiskfs/node-drop.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libdiskfs/node-drop.c b/libdiskfs/node-drop.c
index 5920e391..d24bd86d 100644
--- a/libdiskfs/node-drop.c
+++ b/libdiskfs/node-drop.c
@@ -33,7 +33,10 @@ diskfs_drop_node (struct node *np)
if (np->istranslated)
diskfs_set_translator (np, 0, 0, 0);
- if (np->allocsize != 0)
+ if (np->allocsize != 0
+ || (diskfs_create_symlink_hook
+ && S_ISLNK (np->dn_stat.st_mode)
+ && np->dn_stat.st_size))
{
/* If the node needs to be truncated, then a complication
arises, because truncation might require gaining