summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/src/h5dump/h5dump_ddl.c9
-rw-r--r--tools/testfiles/tgroup-2.ddl9
2 files changed, 16 insertions, 2 deletions
diff --git a/tools/src/h5dump/h5dump_ddl.c b/tools/src/h5dump/h5dump_ddl.c
index 4066e6c..96372a1 100644
--- a/tools/src/h5dump/h5dump_ddl.c
+++ b/tools/src/h5dump/h5dump_ddl.c
@@ -846,7 +846,10 @@ dump_group(hid_t gid, const char *name)
H5Oget_info2(gid, &oinfo, H5O_INFO_BASIC);
- {
+ /* Must check for uniqueness of all objects if we've traversed an elink,
+ * otherwise only check if the reference count > 1.
+ */
+ if (oinfo.rc > 1 || hit_elink) {
obj_t *found_obj; /* Found object */
found_obj = search_obj(group_table, oinfo.addr);
@@ -870,6 +873,10 @@ dump_group(hid_t gid, const char *name)
link_iteration(gid, crt_order_flags);
}
}
+ else {
+ attr_iteration(gid, attr_crt_order_flags);
+ link_iteration(gid, crt_order_flags);
+ }
dump_indent -= COL;
ctx.indent_level--;
diff --git a/tools/testfiles/tgroup-2.ddl b/tools/testfiles/tgroup-2.ddl
index 5374742..2ac8ac6 100644
--- a/tools/testfiles/tgroup-2.ddl
+++ b/tools/testfiles/tgroup-2.ddl
@@ -17,7 +17,14 @@ GROUP "/" {
}
}
GROUP "g2" {
- HARDLINK "/g2"
+ GROUP "g2.1" {
+ GROUP "g2.1.1" {
+ }
+ GROUP "g2.1.2" {
+ }
+ GROUP "g2.1.3" {
+ }
+ }
}
GROUP "g3" {
GROUP "g3.1" {