abies Mon Jan 12 15:03:50 2004 EDT Modified files: /php-src/ext/interbase interbase.c Log: More handsome solution for previous fix Index: php-src/ext/interbase/interbase.c diff -u php-src/ext/interbase/interbase.c:1.192 php-src/ext/interbase/interbase.c:1.193 --- php-src/ext/interbase/interbase.c:1.192 Mon Jan 12 14:47:28 2004 +++ php-src/ext/interbase/interbase.c Mon Jan 12 15:03:49 2004 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: interbase.c,v 1.192 2004/01/12 19:47:28 abies Exp $ */ +/* $Id: interbase.c,v 1.193 2004/01/12 20:03:49 abies Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -26,7 +26,7 @@ #include "php.h" -#define FILE_REVISION "$Revision: 1.192 $" +#define FILE_REVISION "$Revision: 1.193 $" #if HAVE_IBASE @@ -831,6 +831,7 @@ { zval ***args; char *ib_server = NULL, *ib_uname, *ib_passwd, *ib_charset = NULL, *ib_buffers = NULL, *ib_dialect = NULL, *ib_role = NULL; + unsigned short sql_dialect = SQL_DIALECT_CURRENT; int ib_uname_len, ib_passwd_len; isc_db_handle db_handle = NULL; char *hashed_details; @@ -855,6 +856,8 @@ } switch (ZEND_NUM_ARGS()) { + unsigned short d; + case 7: convert_to_string_ex(args[6]); ib_role = Z_STRVAL_PP(args[6]); @@ -863,6 +866,10 @@ case 6: convert_to_string_ex(args[5]); ib_dialect = Z_STRVAL_PP(args[5]); + if ((d = (unsigned short)strtoul(ib_dialect, NULL, 10))) + { + sql_dialect = d; + } hashed_details_length += Z_STRLEN_PP(args[5]); /* fallout */ case 5: @@ -940,10 +947,7 @@ ib_link = (ibase_db_link *) malloc(sizeof(ibase_db_link)); ib_link->handle = db_handle; - if (ib_dialect) { - unsigned short d = (unsigned short)strtoul(ib_dialect, NULL, 10); - ib_link->dialect = (d ? d : SQL_DIALECT_CURRENT); - } + ib_link->dialect = sql_dialect; ib_link->tr_list = NULL; /* hash it up */ @@ -1005,10 +1009,7 @@ ib_link = (ibase_db_link *) emalloc(sizeof(ibase_db_link)); ib_link->handle = db_handle; - if (ib_dialect) { - unsigned short d = (unsigned short)strtoul(ib_dialect, NULL, 10); - ib_link->dialect = (d ? d : SQL_DIALECT_CURRENT); - } + ib_link->dialect = sql_dialect; ib_link->tr_list = NULL; ZEND_REGISTER_RESOURCE(return_value, ib_link, le_link);
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php