aboutsummaryrefslogtreecommitdiff
path: root/internal/fusefrontend/node_helpers.go
diff options
context:
space:
mode:
authorJakob Unterwurzacher2020-07-11 20:27:47 +0200
committerJakob Unterwurzacher2020-07-11 20:27:47 +0200
commitd539a4c21474a5d45bb3b8432d7b6f07664e61bd (patch)
treed91f56dca157ce66df7809f0542e03b928fedba5 /internal/fusefrontend/node_helpers.go
parentb0342fae5d89301992d87f4305df71da502300ba (diff)
v2api: fix RootNode cast
Diffstat (limited to 'internal/fusefrontend/node_helpers.go')
-rw-r--r--internal/fusefrontend/node_helpers.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/internal/fusefrontend/node_helpers.go b/internal/fusefrontend/node_helpers.go
index 1eb6d4a..a7a32af 100644
--- a/internal/fusefrontend/node_helpers.go
+++ b/internal/fusefrontend/node_helpers.go
@@ -3,6 +3,8 @@ package fusefrontend
import (
"context"
+ "github.com/hanwen/go-fuse/v2/fs"
+
"github.com/hanwen/go-fuse/v2/fuse"
)
@@ -18,3 +20,12 @@ func toFuseCtx(ctx context.Context) (ctx2 *fuse.Context) {
}
return ctx2
}
+
+// toNode casts a generic fs.InodeEmbedder into *Node. Also handles *RootNode
+// by return rn.Node.
+func toNode(op fs.InodeEmbedder) *Node {
+ if r, ok := op.(*RootNode); ok {
+ return &r.Node
+ }
+ return op.(*Node)
+}