Some bugs in 7.0.4
Posted: 17.07.2013, 19:51
Looks like I found 2 bugs in stable version.
1. ZDBCInterbaseMetadata.pas
function TZInterbase6DatabaseMetadata.UncachedGetColumns
The Last row should be:
2. ZDBCMySql.pas
procedure TZMySQLConnection.Open;
In row 316 in some very old versions of MySQL-4.1 client dll, which I unhappily met, CharSet is not set to default after Init, so we get access violation error. (Best way is to upgrade the dll at last)
Proposed correction:
if GetPlainDriver.GetClientVersion<40110 then ConSettings.ClientCodePage:='latin1' else ConSettings.ClientCodePage:=GetPlainDriver.GetConnectionCharacterSet(FHandle));
Didn't want to register on bug tracker, sorry.
1. ZDBCInterbaseMetadata.pas
function TZInterbase6DatabaseMetadata.UncachedGetColumns
Code: Select all
1810: case TypeName of
1812: 7, 8 : Result.UpdateInt(7, 0);
1813: 16 : Result.UpdateInt(7, GetInt(ColumnIndexes[9]));
1814: 37, 38: UpdateNull(7);
Code: Select all
1814: 37, 38: Result.UpdateNull(7);
procedure TZMySQLConnection.Open;
Code: Select all
314: GetPlainDriver.Init(FHandle);
315: {EgonHugeist: Arrange Client-CodePage/CharacterSet first
Now we know if UTFEncoding is neccessary or not}
316: sMy_client_Char_Set :=String(GetPlainDriver.GetConnectionCharacterSet(FHandle));
317: ConSettings.ClientCodePage := GetPlainDriver.ValidateCharEncoding(sMy_client_Char_Set); //This sets the internal use of Encodings..
Proposed correction:
if GetPlainDriver.GetClientVersion<40110 then ConSettings.ClientCodePage:='latin1' else ConSettings.ClientCodePage:=GetPlainDriver.GetConnectionCharacterSet(FHandle));
Didn't want to register on bug tracker, sorry.