]> wimlib.net Git - wimlib/blobdiff - src/lookup_table.h
Win32 fixes
[wimlib] / src / lookup_table.h
index d172cac9cb1c05b13a9fe060adc3af8572d7125e..accc7324faaf93b2f6912c2a834b9407c5294192 100644 (file)
 #define LOOKUP_FLAG_ADS_OK             0x00000001
 #define LOOKUP_FLAG_DIRECTORY_OK       0x00000002
 
+#ifdef __WIN32__
+#include <windef.h>
+#endif
+
 
 /* The lookup table of a WIM file maps SHA1 message digests to streams of data.
  * Here, the in-memory structure is implemented as a hash table.
@@ -159,6 +163,9 @@ struct wim_lookup_table_entry {
                WIMStruct *wim;
                mbchar *file_on_disk;
                mbchar *staging_file_name;
+       #ifdef __WIN32__
+               wchar_t *win32_file_on_disk;
+       #endif
                u8 *attached_buffer;
        #ifdef WITH_NTFS_3G
                struct ntfs_location *ntfs_loc;
@@ -168,6 +175,7 @@ struct wim_lookup_table_entry {
                /* @file_on_disk_fp and @attr are both used to cache file/stream
                 * handles so we don't have re-open them on every read */
 
+
                /* Valid iff resource_location == RESOURCE_IN_FILE_ON_DISK */
                FILE *file_on_disk_fp;
        #ifdef WITH_NTFS_3G
@@ -175,6 +183,8 @@ struct wim_lookup_table_entry {
                struct _ntfs_attr *attr;
        #endif
 
+               HANDLE win32_file_on_disk_fp;
+
                /* Pointer to inode that contains the opened file descriptors to
                 * this stream (valid iff resource_location ==
                 * RESOURCE_IN_STAGING_FILE) */