ZConnection.AutoEncodeStrings set to true
ZConnection.Properties shows:
AutoEncodeStrings=ON
codepage=WE8ISO8859P15
controls_cp=CP_UTF8
save and restart Lazarus, reopen the project:
AutoEncodeStrings in Object-Inspector is now false, despite the settings in ZConnection1.Properties
... and Strings like "Büdingen" are displayed wrong!
Info:
zeosdbo-7.2.4-stable.zip
Windows XP,
Oracle Database running on remote PC
German locale
Lazarus 1.9.0 r57768M FPC 3.1.1 i386-win32-win32/win64
*************************************************************************
On Lazarus Mailing List someone ( Luca Olivetti ) tells us:
In the version of zeos I have (7.1.4), the property AutoEncodeStrings is marked as "default True", however the constructor doesn't set the underlying field to true, hence the bug is in the zeos library.
*************************************************************************
my personal fix: added one line in ZAbstractConection.pas at the end:
Code: Select all
constructor TZAbstractConnection.Create(AOwner: TComponent);
begin
{$IFDEF UNICODE}
FControlsCodePage := cCP_UTF16;
{$ELSE}
{$IFDEF FPC}
FControlsCodePage := cCP_UTF8;
{$ELSE}
FControlsCodePage := cGET_ACP;
{$ENDIF}
{$ENDIF}
FURL := TZURL.Create;
inherited Create(AOwner);
FAutoCommit := True;
FReadOnly := False;
FTransactIsolationLevel := tiNone;
FConnection := nil;
FUseMetadata := True;
FDatasets := TList.Create;
// Modified by cipto 8/1/2007 1:45:56 PM
FSequences:= TList.Create;
FLoginPrompt := False;
FDesignConnection := False;
(* added JohnML *)
FAutoEncode:=true;
end;