]> wimlib.net Git - wimlib/blobdiff - src/resource.c
win32_read_file: Use UTF16-LE name
[wimlib] / src / resource.c
index 0bffb3a62a74c7ff9eec29fa875a7183fb76da68..ee2b2941c8448ed13821855e9cb5a65669f49e68 100644 (file)
 #  include <ntfs-3g/dir.h>
 #endif
 
+#if defined(__WIN32__) && !defined(INVALID_HANDLE_VALUE)
+#  define INVALID_HANDLE_VALUE ((HANDLE)(-1))
+#endif
+
 /*
  * Reads all or part of a compressed resource into an in-memory buffer.
  *
@@ -570,9 +574,10 @@ read_wim_resource(const struct wim_lookup_table_entry *lte, void *buf,
                break;
 #ifdef __WIN32__
        case RESOURCE_WIN32:
-               wimlib_assert(lte->file_on_disk_fp != NULL);
-               ret = win32_read_file(lte->file_on_disk, lte->file_on_disk_fp,
-                                     offset, size, buf);
+               wimlib_assert(lte->win32_file_on_disk_fp != INVALID_HANDLE_VALUE);
+               ret = win32_read_file(lte->win32_file_on_disk,
+                                     lte->win32_file_on_disk_fp, offset, size,
+                                     buf);
                break;
 #endif
        case RESOURCE_IN_ATTACHED_BUFFER:
@@ -590,7 +595,7 @@ read_wim_resource(const struct wim_lookup_table_entry *lte, void *buf,
                if (ntfs_attr_pread(lte->attr, offset, size, buf) != size) {
                        ERROR_WITH_ERRNO("Error reading NTFS attribute "
                                         "at `%s'",
-                                        lte->ntfs_loc->path_utf8);
+                                        lte->ntfs_loc->path);
                        ret = WIMLIB_ERR_NTFS_3G;
                }
                break;