src/simple.c
changeset 27 461be4cd34a3
parent 10 e74c23297b11
--- a/src/simple.c	Sun Oct 12 21:59:52 2008 +0300
+++ b/src/simple.c	Mon Oct 13 02:27:59 2008 +0300
@@ -157,13 +157,13 @@
         EERROR(err = ENOTDIR, "bad mode");
 
     // fill in the dirbuf
-    if (dirbuf_init(&buf, size))
+    if (dirbuf_init(&buf, size, off))
         ERROR("failed to init dirbuf");
     
     // add . and ..
     // we set the next offset to 2, because all dirent offsets will be larger than that
-    err =   dirbuf_add(req, off, &buf, 0, 1, ".",   dir_node->inode,    S_IFDIR )
-        ||  dirbuf_add(req, off, &buf, 1, 2, "..",  dir_node->inode,    S_IFDIR );
+    err =   dirbuf_add(req, &buf, 0, 1, ".",   dir_node->inode,    S_IFDIR )
+        ||  dirbuf_add(req, &buf, 1, 2, "..",  dir_node->inode,    S_IFDIR );
     
     if (err != 0)
         EERROR(err, "failed to add . and .. dirents");
@@ -175,7 +175,7 @@
             continue;
         
         // child node offsets are just inode + 2
-        if ((err = dirbuf_add(req, off, &buf, node->inode + 2, node->inode + 3, node->name, node->inode, node->mode_type)) < 0)
+        if ((err = dirbuf_add(req, &buf, node->inode + 2, node->inode + 3, node->name, node->inode, node->mode_type)) < 0)
             EERROR(err, "failed to add dirent for inode=%lu", node->inode);
         
         // stop if it's full