Make sure that DRIVE_FindDriveRoot always returns an absolute path.

diff --git a/files/dos_fs.c b/files/dos_fs.c
index c045a98..74be98e 100644
--- a/files/dos_fs.c
+++ b/files/dos_fs.c
@@ -867,7 +867,6 @@
  */
 BOOL DOSFS_GetFullName( LPCSTR name, BOOL check_last, DOS_FULL_NAME *full )
 {
-    BOOL unixabsolute = *name == '/';
     BOOL found;
     UINT flags;
     char *p_l, *p_s, *root;
@@ -895,7 +894,7 @@
     {
         while ((*name == '\\') || (*name == '/')) name++;
     }
-    else if (!unixabsolute)  /* Relative path */
+    else  /* Relative path */
     {
         lstrcpynA( root + 1, DRIVE_GetUnixCwd( full->drive ),
                      sizeof(full->long_name) - (root - full->long_name) - 1 );
@@ -1028,7 +1027,6 @@
     DWORD sp = 0, lp = 0;
     int tmplen, drive;
     UINT flags;
-    BOOL unixabsolute = *longpath == '/';
 
     TRACE("%s\n", debugstr_a(longpath));
 
@@ -1046,22 +1044,12 @@
       return 0;
     }
 
-    /* check for drive letter */
-    if ( longpath[1] == ':' ) {
-      tmpshortpath[0] = longpath[0];
-      tmpshortpath[1] = ':';
-      sp = 2;
-    }
-
     if ( ( drive = DOSFS_GetPathDrive ( &longpath )) == -1 ) return 0;
     flags = DRIVE_GetFlags ( drive );
 
-    if ( unixabsolute ) {
-      tmpshortpath[0] = drive + 'A';
-      tmpshortpath[1] = ':';
-      tmpshortpath[2] = '\\';
-      sp = 3;
-    }
+    tmpshortpath[0] = drive + 'A';
+    tmpshortpath[1] = ':';
+    sp = 2;
 
     while ( longpath[lp] ) {
 
@@ -2431,4 +2419,3 @@
     GlobalFree16( handle );
     return TRUE;
 }
-