Save a disk file's drive type in the server object.

diff --git a/files/file.c b/files/file.c
index ec33637..b9e3fb0 100644
--- a/files/file.c
+++ b/files/file.c
@@ -281,7 +281,8 @@
  */
 HANDLE FILE_CreateFile( LPCSTR filename, DWORD access, DWORD sharing,
                         LPSECURITY_ATTRIBUTES sa, DWORD creation,
-                        DWORD attributes, HANDLE template, BOOL fail_read_only )
+                        DWORD attributes, HANDLE template, BOOL fail_read_only,
+                        UINT drive_type )
 {
     DWORD err;
     HANDLE ret;
@@ -297,11 +298,12 @@
  restart:
     SERVER_START_VAR_REQ( create_file, len )
     {
-        req->access  = access;
-        req->inherit = (sa && (sa->nLength>=sizeof(*sa)) && sa->bInheritHandle);
-        req->sharing = sharing;
-        req->create  = creation;
-        req->attrs   = attributes;
+        req->access     = access;
+        req->inherit    = (sa && (sa->nLength>=sizeof(*sa)) && sa->bInheritHandle);
+        req->sharing    = sharing;
+        req->create     = creation;
+        req->attrs      = attributes;
+        req->drive_type = drive_type;
         memcpy( server_data_ptr(req), filename, len );
         SetLastError(0);
         err = SERVER_CALL();
@@ -509,7 +511,8 @@
 
     ret = FILE_CreateFile( full_name.long_name, access, sharing,
                            sa, creation, attributes, template,
-                           DRIVE_GetFlags(full_name.drive) & DRIVE_FAIL_READ_ONLY );
+                           DRIVE_GetFlags(full_name.drive) & DRIVE_FAIL_READ_ONLY,
+                           GetDriveTypeA( full_name.short_name ) );
  done:
     if (!ret) ret = INVALID_HANDLE_VALUE;
     return ret;
@@ -977,7 +980,8 @@
 
     hFileRet = FILE_CreateFile( full_name.long_name, access, sharing,
                                 NULL, OPEN_EXISTING, 0, 0,
-                                DRIVE_GetFlags(full_name.drive) & DRIVE_FAIL_READ_ONLY );
+                                DRIVE_GetFlags(full_name.drive) & DRIVE_FAIL_READ_ONLY,
+                                GetDriveTypeA( full_name.short_name ) );
     if (!hFileRet) goto not_found;
 
     GetFileTime( hFileRet, NULL, NULL, &filetime );