#8 Double assignment error

closed-invalid
None
1
2005-07-18
2004-08-05
Thierry Nivon
No

Found in DbxOpenOdbc.pas

procedure DoPrepareNow;
var
aOdbcParamList :TList;
Value: SQLUINTEGER;
begin
aOdbcParamList := fOdbcParamList;
fOdbcParamList := nil;
try
aOdbcParamList := fOdbcParamList;
fOdbcParamList := nil;

the two first
aOdbcParamList := fOdbcParamList;
fOdbcParamList := nil;

are incorrect
(strangely with not all databases)
so we must suppress them to make the driver work correctly

Thierry Nivon

Discussion

  • Thierry Nivon
    Thierry Nivon
    2004-08-05

    • priority: 5 --> 9
     
  • Logged In: YES
    user_id=644745

    It is the sensible code.
    DoPrepareNow it is called only in a case, when
    StmtPerSession> 1.
    We only hide and we restore an argument list fOdbcParamList
    that correctly and fast to call prepare (...)
    Then parameters are repeatedly bind DoReBindParams (...)

     
    • status: open --> open-invalid
     
    • assigned_to: nobody --> pult
    • status: open-invalid --> closed-invalid
     
    • priority: 9 --> 1