// reiserfs_rewind_dir static status_t reiserfs_rewind_dir(fs_volume *fs, fs_vnode *_node, void *cookie) { TOUCH(fs); // FUNCTION_START(); VNode *node = (VNode*)_node->private_node; FUNCTION(("node: (%Ld: %lu, %lu)\n", node->GetID(), node->GetDirID(), node->GetObjectID())); TOUCH(node); DirectoryCookie *iterator = (DirectoryCookie*)cookie; status_t error = iterator->Rewind(); // no need to Resume() if (error == B_OK) error = iterator->Suspend(); RETURN_ERROR(error); }
static status_t packagefs_rewind_dir(fs_volume* fsVolume, fs_vnode* fsNode, void* _cookie) { Volume* volume = (Volume*)fsVolume->private_volume; Node* node = (Node*)fsNode->private_node; DirectoryCookie* cookie = (DirectoryCookie*)_cookie; FUNCTION("volume: %p, node: %p (%" B_PRId64 "), cookie: %p\n", volume, node, node->ID(), cookie); TOUCH(volume); TOUCH(node); NodeWriteLocker dirLocker(node); cookie->Rewind(); return B_OK; }