We don't want to use the OVERLAY_CALL macro for can_page() as it returns a bool
and not a status_t. In case of virtual files it would have wrongly returned B_UNSUPPORTED, resulting in true instead of false. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30895 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -993,7 +993,17 @@ overlay_get_vnode_name(fs_volume *volume, fs_vnode *vnode, char *buffer,
|
|||||||
static bool
|
static bool
|
||||||
overlay_can_page(fs_volume *volume, fs_vnode *vnode, void *cookie)
|
overlay_can_page(fs_volume *volume, fs_vnode *vnode, void *cookie)
|
||||||
{
|
{
|
||||||
OVERLAY_CALL(can_page, cookie)
|
TRACE("relaying op: can_page\n");
|
||||||
|
OverlayInode *node = (OverlayInode *)vnode->private_node;
|
||||||
|
if (node->IsVirtual())
|
||||||
|
return false;
|
||||||
|
|
||||||
|
fs_vnode *superVnode = node->SuperVnode();
|
||||||
|
if (superVnode->ops->can_page != NULL) {
|
||||||
|
return superVnode->ops->can_page(volume->super_volume, superVnode,
|
||||||
|
cookie);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user