Quellcode durchsuchen

FExpand: always uppercase drive letter also in BasePath

git-svn-id: trunk@46353 -
ondrej vor 5 Jahren
Ursprung
Commit
cfff96f44c
1 geänderte Dateien mit 6 neuen und 1 gelöschten Zeilen
  1. 6 1
      rtl/inc/fexpand.inc

+ 6 - 1
rtl/inc/fexpand.inc

@@ -306,7 +306,12 @@ begin
             S := BasePath;
 {$ENDIF FPC_FEXPAND_SYSUTILS and not SYSUTILSUNICODE}
             if not FileNameCasePreserving then
-              S := UpCase(S);
+              S := UpCase(S)
+            else
+            { Always uppercase driveletter }
+            if (Length (S) > 1) and CharInSet(S [1], ['a'..'z']) and
+              (S [2] = DriveSeparator) and (DriveSeparator <> DirectorySeparator) then
+                S [1] := Chr (Ord (S [1]) and not ($20));
 
 {$IFDEF FPC_FEXPAND_VOLUMES}
  {$IFDEF FPC_FEXPAND_DRIVESEP_IS_ROOT}