BFS needs to also allocate a file cache when dealing with a long symlink inode. Fixes ticket #5282.
Axel and/or Ingo, please review. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35147 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -344,7 +344,7 @@ Inode::Inode(Volume* volume, ino_t id)
|
|||||||
|
|
||||||
if (IsContainer())
|
if (IsContainer())
|
||||||
fTree = new BPlusTree(this);
|
fTree = new BPlusTree(this);
|
||||||
if (IsFile() || IsAttribute()) {
|
if (IsFile() || IsAttribute() || IsLongSymLink()) {
|
||||||
SetFileCache(file_cache_create(fVolume->ID(), ID(), Size()));
|
SetFileCache(file_cache_create(fVolume->ID(), ID(), Size()));
|
||||||
SetMap(file_map_create(volume->ID(), ID(), Size()));
|
SetMap(file_map_create(volume->ID(), ID(), Size()));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,6 +73,8 @@ public:
|
|||||||
|
|
||||||
bool IsDeleted() const
|
bool IsDeleted() const
|
||||||
{ return (Flags() & INODE_DELETED) != 0; }
|
{ return (Flags() & INODE_DELETED) != 0; }
|
||||||
|
bool IsLongSymLink() const
|
||||||
|
{ return (Flags() & INODE_LONG_SYMLINK) != 0; }
|
||||||
|
|
||||||
mode_t Mode() const { return fNode.Mode(); }
|
mode_t Mode() const { return fNode.Mode(); }
|
||||||
uint32 Type() const { return fNode.Type(); }
|
uint32 Type() const { return fNode.Type(); }
|
||||||
|
|||||||
Reference in New Issue
Block a user