fix
diff --git a/lib/fuse.c b/lib/fuse.c
index f80485d..004095c 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -1044,9 +1044,9 @@
struct fuse_entry_out outarg;
res = -ENOENT;
- oldpath = get_path(f, in->nodeid);
+ oldpath = get_path(f, arg->oldnodeid);
if (oldpath != NULL) {
- newpath = get_path_name(f, arg->newdir, name);
+ newpath = get_path_name(f, in->nodeid, name);
if (newpath != NULL) {
if (f->flags & FUSE_DEBUG) {
printf("LINK %s\n", newpath);
@@ -1056,7 +1056,7 @@
if (f->op.link && f->op.getattr) {
res = f->op.link(oldpath, newpath);
if (res == 0)
- res = lookup_path(f, arg->newdir, in->unique, name,
+ res = lookup_path(f, in->nodeid, in->unique, name,
newpath, &outarg);
}
free(newpath);