Incorrect processing of DSQL_drop?
----------------------------------

                 Key: CORE-4699
                 URL: http://tracker.firebirdsql.org/browse/CORE-4699
             Project: Firebird Core
          Issue Type: Bug
          Components: API / Client Library
    Affects Versions: 2.5.4
            Reporter: Kovalenko Dmitry
            Priority: Minor


As I understand, DSQL_drop constant presents the FLAG of operation, not ID of 
operation.

However, in some cases, instead of checking the flag DSQL_drop, used a direct 
comparison with DSQL_drop

[GDS_DSQL_FREE] [why.cpp]

                if (option & DSQL_drop) // <----- OK
                {
                        destroy(statement);
                        *stmt_handle = 0;
                }

[GDS_DSQL_FREE] [interface.cpp]

                        if (option == DSQL_drop) // <----- ???
                        {
                                release_sql_request(statement);
                                *stmt_handle = NULL;
                        }

                        if (option == DSQL_drop) // <----- ???
                                *stmt_handle = NULL;

[Stack]
        fbclient_d.dll!REM_free_statement(int * user_status=0x0249e470, Rsr * * 
stmt_handle=0x00612e2c, unsigned short option=2) Line 1960      C++
>       fbclient_d.dll!isc_dsql_free_statement(int * user_status=0x0249e470, 
> void * * stmt_handle=0x042db448, unsigned short option=2) Line 3348        C++
        
_IBProvider_v3_vs2013_d.dll!IBP_ISC_API__dsql_free_statement(isc_base::t_isc_provider
 * isc_provider=0x040ceed8, isc_base::t_isc_connection * 
isc_connection=0x040cf3c0, isc_base::t_isc_status_vector & 
arg1__status_vector={...}, void * * arg2__stmt_handle_ptr=0x042db448, unsigned 
short arg3__op_id=2) Line 209   C++


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to