From 4616b7ed2792ffafc3e123795912f27dec30fae1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Tue, 25 Mar 2008 18:48:57 +0000 Subject: [PATCH] * Added "-b" option to the "bfs_inode" command: when this is specified, you can use a pointer to the inode block rather than to the Inode object in memory. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24574 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/file_systems/bfs/Debug.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/add-ons/kernel/file_systems/bfs/Debug.cpp b/src/add-ons/kernel/file_systems/bfs/Debug.cpp index 15f147faa4..e4006993cc 100644 --- a/src/add-ons/kernel/file_systems/bfs/Debug.cpp +++ b/src/add-ons/kernel/file_systems/bfs/Debug.cpp @@ -248,14 +248,23 @@ dump_bplustree_node(const bplustree_node *node, const bplustree_header *header, static int dump_inode(int argc, char **argv) { - if (argc != 2 || !strcmp(argv[1], "--help")) { - kprintf("usage: bfsinode \n"); + bool block = false; + if (argc == 3 && !strcmp(argv[1], "-b")) + block = true; + + if (argc != 2 + (block ? 1 : 0) || !strcmp(argv[1], "--help")) { + kprintf("usage: bfsinode [-b] \n"); return 0; } - Inode *inode = (Inode *)parse_expression(argv[1]); - dump_inode(&inode->Node()); + addr_t address = parse_expression(argv[argc - 1]); + bfs_inode *node; + if (block) + node = (bfs_inode *)address; + else + node = &((Inode *)address)->Node(); + dump_inode(node); return 0; }