Issue created by Sebastian Huber: https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5723
`msdos_short_entry_to_utf8_name()` gives the buffer of the formatted short name `MSDOS_NAME_MAX_WITH_DOT` bytes. That is the length of a full 8.3 name and leaves no room for the terminating null character which `msdos_format_dirent_with_dot()` writes. A directory entry which uses all eight base and all three extension characters writes one byte past the buffer. The effect is visible where the compiler places a live variable in that byte. On `microblaze` the byte holds the low byte of the destination size, which becomes zero. The converter then produces nothing, `msdos_find_file_in_directory()` skips the entry, and every lookup of that name fails with `ENOENT`. `readdir()` still reports the entry, so such a file cannot be opened, removed or renamed. Found while running the full test suite on eleven simulators. This description was created with Claude Code assistance. -- View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5723 You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/sent_notifications/5-ep73wez5f2p7fsqp9qj1q7d6y-1d/unsubscribe | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | Help: https://gitlab.rtems.org/help
_______________________________________________ bugs mailing list [email protected] http://lists.rtems.org/mailman/listinfo/bugs
