summaryrefslogtreecommitdiffstats
path: root/src/client/Dentry.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/client/Dentry.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/client/Dentry.h b/src/client/Dentry.h
index 8003dfed3..47d320ecb 100644
--- a/src/client/Dentry.h
+++ b/src/client/Dentry.h
@@ -77,6 +77,22 @@ public:
dir = nullptr;
}
+ bool make_path_string(std::string& s)
+ {
+ bool ret = false;
+
+ if (dir) {
+ ret = dir->parent_inode->make_path_string(s);
+ } else {
+ // Couldn't link all the way to our mount point
+ return false;
+ }
+ s += "/";
+ s.append(name.data(), name.length());
+
+ return ret;
+ }
+
void dump(Formatter *f) const;
friend std::ostream &operator<<(std::ostream &oss, const Dentry &Dentry);