+
+ // Load ISO9660 file id if no NM found.
+
+ ;
+ char name_val = drec->name.content[0];
+ u32_t l = drec->name.len;
+
+ if (l == 1 && !name_val) {
+ cache->name = vfs_dot;
+ return;
+ }
+
+ if(l == 1 && name_val == 1) {
+ cache->name = vfs_ddot;
+ return;
+ }
+
+ while (l < (u32_t)-1 && drec->name.content[l--] != ';')
+ ;
+
+ l = (l + 1) ? l : drec->name.len;
+ l = MIN(l, ISO9660_IDLEN - 1);
+
+ strncpy(cache->name_val, (const char*)drec->name.content, l);
+ cache->name = HSTR(cache->name_val, l);
+ hstr_rehash(&cache->name, HSTR_FULL_HASH);