From: Ann W. H. <awh...@us...> - 2001-10-27 22:31:00
|
Build Number:532 Update of /cvsroot/firebird/interbase/isql In directory usw-pr-cvs1:/tmp/cvs-serv20618/interbase/isql Modified Files: isql.e Log Message: Turns out that procedures are honorary select statements ... fixed. Also moved a statement type check before the debugging stuff that uses it. Index: isql.e =================================================================== RCS file: /cvsroot/firebird/interbase/isql/isql.e,v retrieving revision 1.19 retrieving revision 1.20 diff -U3 -r1.19 -r1.20 --- isql.e 2001/10/22 21:46:38 1.19 +++ isql.e 2001/10/27 22:30:57 1.20 @@ -7471,7 +7471,19 @@ if (isc_status[2] == isc_arg_warning) ISQL_warning (isc_status); +/* Find out what kind of statement this is */ + +if (isc_dsql_sql_info (isc_status, &Stmt, sizeof (sqlda_info), sqlda_info, + sizeof (info_buffer), info_buffer)) + ISQL_errmsg (isc_status); +else + if (info_buffer [0] == isc_info_sql_stmt_type) + { + l = gds__vax_integer (info_buffer + 1, 2); + statement_type = gds__vax_integer (info_buffer + 3, l); + } + #ifdef DEV_BUILD if (Sqlda_display) { @@ -7507,8 +7519,9 @@ ISQL_warning (isc_status); } - if ((statement_type == isc_info_sql_stmt_select) - || statement_type == isc_info_sql_stmt_select_for_upd) + if ((statement_type == isc_info_sql_stmt_select) || + (statement_type == isc_info_sql_stmt_select_for_upd) || + (statement_type == isc_info_sql_stmt_exec_procedure)) { UCHAR buffer [100]; USHORT i; @@ -7538,24 +7551,12 @@ } #endif -/* Find out what kind of statement this is */ - -if (isc_dsql_sql_info (isc_status, &Stmt, sizeof (sqlda_info), sqlda_info, - sizeof (info_buffer), info_buffer)) - ISQL_errmsg (isc_status); -else - if (info_buffer [0] == isc_info_sql_stmt_type) - { - l = gds__vax_integer (info_buffer + 1, 2); - statement_type = gds__vax_integer (info_buffer + 3, l); - } - -/* if PLAN is set, print out the plan now */ - /* check for warnings */ if (isc_status[2] == isc_arg_warning) ISQL_warning (isc_status); +/* if PLAN is set, print out the plan now */ + if (Plan) { /* Bug 7565: A plan larger than plan_buffer will not be displayed */ @@ -7583,7 +7584,8 @@ /* If the statement isn't a select, execute it and be done */ if (statement_type != isc_info_sql_stmt_select - && statement_type != isc_info_sql_stmt_select_for_upd) + && statement_type != isc_info_sql_stmt_select_for_upd + && statement_type != isc_info_sql_stmt_exec_procedure) { /* If this is an autocommit, put the DDL stmt on a special trans */ |