X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/b6ff3c7dbab3f40d03389808d95ac27d416c35e3..45e1f8b055043e54be35462852ab6649d634da7c:/lunaix-os/kernel/fs/iso9660/directory.c?ds=sidebyside diff --git a/lunaix-os/kernel/fs/iso9660/directory.c b/lunaix-os/kernel/fs/iso9660/directory.c index 1d35978..76262d2 100644 --- a/lunaix-os/kernel/fs/iso9660/directory.c +++ b/lunaix-os/kernel/fs/iso9660/directory.c @@ -52,10 +52,12 @@ done: u32_t l = drec->name.len; 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, drec->name.content, l); + strncpy(cache->name_val, (const char*)drec->name.content, l); + cache->name = HSTR(cache->name_val, l); hstr_rehash(&cache->name, HSTR_FULL_HASH); }