}
/* Read the data from the WIM file */
- ret = read_full_resource_into_buf(lte, rpbuf + 8, true);
+ ret = read_full_resource_into_buf(lte, rpbuf + 8);
if (ret)
return ret;
{
tchar *p = dest;
+#ifdef __WIN32__
+ /* Skip drive letter */
+ if (!is_rp_path_separator(*dest))
+ p += 2;
+#endif
+
DEBUG("Fixing symlink or junction \"%"TS"\"", dest);
for (;;) {
tchar save;
*(p - 1) = RP_PATH_SEPARATOR;
while (p - 1 >= dest && is_rp_path_separator(*(p - 1)))
p--;
+ #ifdef __WIN32__
+ if (!is_rp_path_separator(dest[0])) {
+ *--p = dest[1];
+ *--p = dest[0];
+ }
+ #endif
+ wimlib_assert(p >= dest);
return p;
}