@@ -52,19 +52,14 @@ std::vector<std::pair<std::string, OrbisFSInode_t>> OrbisFSInodeDirectory::listF
5252 retassure (elem->inodeNum , " unexpected zero elem" );
5353 retassure (offset + elem->elemSize <= node->filesize , " elemsize goes oob" );
5454 retassure (sizeof (*elem)+elem->namelen <= elem->elemSize , " namelen too long" );
55-
55+ #ifdef DEBUG
56+ retassure (elem->unk0_is_0x00100000 == 0x00100000 , " elem->unk0_is_0x00100000 is 0x%08x" ,elem->unk0_is_0x00100000 );
57+ #endif
58+
5659 std::string elemName{elem->name ,elem->name +elem->namelen };
5760 if (!includeSelfAndParent && (elemName == " ." || elemName == " .." )) continue ;
5861
59- OrbisFSInode_t *curInode = NULL ;
60- try {
61- curInode = findInode (elem->inodeNum );
62- } catch (tihmstar::OrbisFSInodeBadMagic &e) {
63- #ifdef XCODE
64- debug (" Ignoring vanished elem '%s'" ,elemName.c_str ());
65- #endif
66- continue ;
67- }
62+ OrbisFSInode_t *curInode = findInode (elem->inodeNum );
6863 ret.push_back ({
6964 elemName,
7065 *curInode
@@ -87,20 +82,15 @@ OrbisFSInode_t *OrbisFSInodeDirectory::findChildInDirectory(OrbisFSInode_t *node
8782 retassure (elem->inodeNum , " unexpected zero elem" );
8883 retassure (offset + elem->elemSize <= node->filesize , " elemsize goes oob" );
8984 retassure (sizeof (*elem)+elem->namelen <= elem->elemSize , " namelen too long" );
85+ #ifdef DEBUG
86+ retassure (elem->unk0_is_0x00100000 == 0x00100000 , " elem->unk0_is_0x00100000 is 0x%08x" ,elem->unk0_is_0x00100000 );
87+ #endif
9088
9189 std::string elemName{elem->name ,elem->name +elem->namelen };
9290 if (elemName == " ." || elemName == " .." ) continue ;
9391 if (elemName != childname) continue ;
9492
95- OrbisFSInode_t *curInode = NULL ;
96- try {
97- curInode = findInode (elem->inodeNum );
98- } catch (tihmstar::OrbisFSInodeBadMagic &e) {
99- #ifdef XCODE
100- debug (" Ignoring vanished elem '%s'" ,elemName.c_str ());
101- #endif
102- continue ;
103- }
93+ OrbisFSInode_t *curInode = findInode (elem->inodeNum );
10494 return curInode;
10595 }
10696error:
0 commit comments