Index: /trunk/src/VBox/Devices/EFI/Firmware/VBoxPkg/VBoxFsDxe/fsw_hfs.c
===================================================================
--- /trunk/src/VBox/Devices/EFI/Firmware/VBoxPkg/VBoxFsDxe/fsw_hfs.c	(revision 82516)
+++ /trunk/src/VBox/Devices/EFI/Firmware/VBoxPkg/VBoxFsDxe/fsw_hfs.c	(revision 82517)
@@ -1308,9 +1308,13 @@
 
         new_name.len = name_len + 1 + file_name->len;
-        new_name.size = 2 * new_name.len;
+        new_name.size = sizeof(fsw_u16) * new_name.len;
         fsw_alloc(new_name.size, &new_name.data);
         name_ptr = (fsw_u16*)new_name.data;
         /* Tack on path separator. */
+#ifdef HOST_POSIX
         name_ptr[0] = L'/';
+#else
+        name_ptr[0] = L'\\';
+#endif
         /* Copy over + swap the new path component. */
         for (i = 0; i < name_len; i++)
