diff options
author | marco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2017-04-28 14:13:23 +0000 |
---|---|---|
committer | marco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2017-04-28 14:13:23 +0000 |
commit | e8f04d9b1babe62831c7c472da999d48710e0b7c (patch) | |
tree | e45f4145c3c604670c232cc23bd72a8c6e8b505e | |
parent | c496311266464a36eec44fd6e9616d157c7472a2 (diff) | |
download | fpc-e8f04d9b1babe62831c7c472da999d48710e0b7c.tar.gz |
--- Merging r33772 into '.':
U packages/fcl-base/src/custapp.pp
--- Recording mergeinfo for merge of r33772 into '.':
U .
--- Merging r34294 into '.':
U packages/fcl-base/fpmake.pp
--- Recording mergeinfo for merge of r34294 into '.':
G .
--- Merging r34467 into '.':
U packages/fcl-base/src/inifiles.pp
--- Recording mergeinfo for merge of r34467 into '.':
G .
--- Merging r34500 into '.':
G packages/fcl-base/src/custapp.pp
--- Recording mergeinfo for merge of r34500 into '.':
G .
# revisions: 33772,34294,34467,34500
git-svn-id: http://svn.freepascal.org/svn/fpc/branches/fixes_3_0@35999 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r-- | packages/fcl-base/fpmake.pp | 2 | ||||
-rw-r--r-- | packages/fcl-base/src/custapp.pp | 13 | ||||
-rw-r--r-- | packages/fcl-base/src/inifiles.pp | 20 |
3 files changed, 23 insertions, 12 deletions
diff --git a/packages/fcl-base/fpmake.pp b/packages/fcl-base/fpmake.pp index f9320e14fe..8afcc49937 100644 --- a/packages/fcl-base/fpmake.pp +++ b/packages/fcl-base/fpmake.pp @@ -124,7 +124,7 @@ begin end; T:=P.Targets.addUnit('advancedipc.pp'); T.ResourceStrings:=true; - T:=P.Targets.addUnit('advancedsingleinstance.pp'); + T:=P.Targets.addUnit('advancedsingleinstance.pas'); T.ResourceStrings:=true; // Additional sources P.Sources.AddSrcFiles('src/win/fclel.*', P.Directory); diff --git a/packages/fcl-base/src/custapp.pp b/packages/fcl-base/src/custapp.pp index d186bac37c..0f722d9a3a 100644 --- a/packages/fcl-base/src/custapp.pp +++ b/packages/fcl-base/src/custapp.pp @@ -285,7 +285,7 @@ begin except On E : Exception do Log(etError,Format('Error formatting message "%s" with %d arguments: %s',[Fmt,Length(Args),E.Message])); - end + end end; constructor TCustomApplication.Create(AOwner: TComponent); @@ -597,7 +597,7 @@ begin If (Length(O)=0) or (O[1]<>FOptionChar) then begin If Assigned(NonOpts) then - NonOpts.Add(O) + NonOpts.Add(O); end else begin @@ -623,7 +623,7 @@ begin If FindLongopt(O) then begin If HaveArg then - AddToResult(Format(SErrNoOptionAllowed,[I,O])) + AddToResult(Format(SErrNoOptionAllowed,[I,O])); end else begin // Required argument @@ -643,8 +643,6 @@ begin begin HaveArg:=(I<ParamCount) and (Length(ParamStr(I+1))>0) and (ParamStr(I+1)[1]<>FOptionChar); UsedArg:=False; - If HaveArg then - OV:=Paramstr(I+1); If Not CaseSensitiveOptions then O:=LowerCase(O); L:=Length(O); @@ -668,10 +666,11 @@ begin end; Inc(J); end; - If HaveArg and UsedArg then + HaveArg:=HaveArg and UsedArg; + If HaveArg then begin Inc(I); // Skip argument. - O:=O[Length(O)]; // O is added to arguments ! + OV:=Paramstr(I); end; end; If HaveArg and ((Result='') or AllErrors) then diff --git a/packages/fcl-base/src/inifiles.pp b/packages/fcl-base/src/inifiles.pp index e2fefe6d05..6ecd2be960 100644 --- a/packages/fcl-base/src/inifiles.pp +++ b/packages/fcl-base/src/inifiles.pp @@ -337,7 +337,10 @@ begin if not FValueHashValid then UpdateValueHash; - I := FValueHash.FindIndexOf(S); + if CaseSensitive then + I := FValueHash.FindIndexOf(S) + else + I := FValueHash.FindIndexOf(AnsiUpperCase(S)); if I >= 0 then Result := Integer(FValueHash[I])-1 else @@ -351,7 +354,10 @@ begin if not FNameHashValid then UpdateNameHash; - I := FNameHash.FindIndexOf(Name); + if CaseSensitive then + I := FNameHash.FindIndexOf(Name) + else + I := FNameHash.FindIndexOf(AnsiUpperCase(Name)); if I >= 0 then Result := Integer(FNameHash[I])-1 else @@ -374,7 +380,10 @@ begin else FValueHash.Clear; for I := 0 to Count - 1 do - FValueHash.Add(Strings[I], Pointer(I+1)); + if CaseSensitive then + FValueHash.Add(Strings[I], Pointer(I+1)) + else + FValueHash.Add(AnsiUpperCase(Strings[I]), Pointer(I+1)); FValueHashValid := True; end; @@ -387,7 +396,10 @@ begin else FNameHash.Clear; for I := 0 to Count - 1 do - FNameHash.Add(Names[I], Pointer(I+1)); + if CaseSensitive then + FNameHash.Add(Names[I], Pointer(I+1)) + else + FNameHash.Add(AnsiUpperCase(Names[I]), Pointer(I+1)); FNameHashValid := True; end; |