From b9a0fae596af9e1768b13f9c32c532fa0a3a999e Mon Sep 17 00:00:00 2001 From: michael Date: Thu, 18 May 2006 12:45:03 +0000 Subject: [PATCH] * Fixed bug #6491, fileextdrive git-svn-id: trunk@3560 - --- rtl/objpas/sysutils/fina.inc | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/rtl/objpas/sysutils/fina.inc b/rtl/objpas/sysutils/fina.inc index f29dbbe298..987baa82b6 100644 --- a/rtl/objpas/sysutils/fina.inc +++ b/rtl/objpas/sysutils/fina.inc @@ -53,20 +53,26 @@ Result := Copy(FileName, 1, I); end; function ExtractFileDrive(const FileName: string): string; -var i: longint; + +var + i,l: longint; + begin -if (Length(FileName) >= 2) and (FileName[2] = ':') then - result := Copy(FileName, 1, 2) -else if (Length(FileName) >= 2) and (FileName[1] in ['/', '\']) and - (FileName[2] in ['/', '\']) then begin - i := 2; - While (i < Length(Filename)) do begin - if Filename[i + 1] in ['/', '\'] then break; - inc(i); - end ; - Result := Copy(FileName, 1, i); - end -else Result := ''; + Result := ''; + l:=Length(FileName); + if (L>=2) then + begin + If (FileName[2]=':') then + result:=Copy(FileName,1,2) + else if (FileName[1] in ['/','\']) and + (FileName[2] in ['/','\']) then + begin + i := 2; + While (i