瀏覽代碼

* patch by C Western for #10883

git-svn-id: trunk@10385 -
florian 17 年之前
父節點
當前提交
c424f27291
共有 1 個文件被更改,包括 6 次插入4 次删除
  1. 6 4
      rtl/objpas/sysutils/sysutils.inc

+ 6 - 4
rtl/objpas/sysutils/sysutils.inc

@@ -27,9 +27,11 @@
       // Start with checking the file in the current directory
       // Start with checking the file in the current directory
       Result:=Name;
       Result:=Name;
       temp:=SetDirSeparators(DirList);
       temp:=SetDirSeparators(DirList);
-      repeat
-        If (Result<>'') and FileExists(Result) Then
+      while True do begin
+        If (Result <> '') and FileExists(Result) Then
           exit;
           exit;
+        If Temp = '' then
+          Break; // No more directories to search - fail
         I:=pos(PathSeparator,Temp);
         I:=pos(PathSeparator,Temp);
         If I<>0 then
         If I<>0 then
           begin
           begin
@@ -41,9 +43,9 @@
             Result:=Temp;
             Result:=Temp;
             Temp:='';
             Temp:='';
           end;
           end;
-        if Result<>'' then
+        If Result<>'' then
           Result:=IncludeTrailingPathDelimiter(Result)+name;
           Result:=IncludeTrailingPathDelimiter(Result)+name;
-      until temp='';
+      end;
       result:='';
       result:='';
     end;
     end;