|
@@ -312,7 +312,7 @@ Var
|
|
O,OV,SO : String;
|
|
O,OV,SO : String;
|
|
HaveArg : Boolean;
|
|
HaveArg : Boolean;
|
|
|
|
|
|
- Function FindLongOpt(Const S : String) : boolean;
|
|
|
|
|
|
+ Function FindLongOpt(S : String) : boolean;
|
|
|
|
|
|
Var
|
|
Var
|
|
I : integer;
|
|
I : integer;
|
|
@@ -325,8 +325,13 @@ Var
|
|
Dec(i);
|
|
Dec(i);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
- I:=LongOpts.IndexOf(S);
|
|
|
|
- Result:=(I<>-1)
|
|
|
|
|
|
+ begin
|
|
|
|
+ S:=UpperCase(S);
|
|
|
|
+ I:=LongOpts.Count-1;
|
|
|
|
+ While (I>=0) and (UpperCase(LongOpts[i])<>S) do
|
|
|
|
+ Dec(i);
|
|
|
|
+ end;
|
|
|
|
+ Result:=(I<>-1);
|
|
end;
|
|
end;
|
|
|
|
|
|
begin
|
|
begin
|
|
@@ -379,7 +384,7 @@ begin
|
|
end
|
|
end
|
|
else
|
|
else
|
|
begin // Optional Argument.
|
|
begin // Optional Argument.
|
|
- If FindLongOpt(O+'::') then
|
|
|
|
|
|
+ If not FindLongOpt(O+'::') then
|
|
Result:=Format(SErrInvalidOption,[I,O]);
|
|
Result:=Format(SErrInvalidOption,[I,O]);
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|