Re: cvs: php-src(PHP_5_3) /ext/sybase_ct php_sybase_ct.c
| From: | Jani Taskinen | Date: | Mon, 10 Nov 2008 11:08:33 +0000 |
| Subject: | Re: cvs: php-src(PHP_5_3) /ext/sybase_ct php_sybase_ct.c | ||
| References: | 1 | Groups: | php.cvs |
| Request: | Send a blank email to php-cvs+get-54128@lists.php.net to get a copy of this message | ||
Seems like you've adopted the idea from Ilia that HEAD is not for development? You either commit to HEAD first and THEN to branches or you don't commit at all. Remember the bunnies..
--Jani
Timm Friebe wrote:
thekid Mon Nov 10 10:59:45 2008 UTCModified files: (Branch: PHP_5_3) /php-src/ext/sybase_ct php_sybase_ct.c Log:- Added optional parameter "new" to sybase_connect # [DOC] If a second call is made to sybase_connect() with the same arguments # no new link will be established, but instead, the link identifier of the # already opened link will be returned. The new parameter modifies this # behavior and makes sybase_connect() always open a new link, even if # sybase_connect() was called before with the same parameters. http://cvs.php.net/viewvc.cgi/php-src/ext/sybase_ct/php_sybase_ct.c?r1=1.103.2.5.2.13.2.12&r2=1.103.2.5.2.13.2.13&diff_format=u Index: php-src/ext/sybase_ct/php_sybase_ct.c diff -u php-src/ext/sybase_ct/php_sybase_ct.c:1.103.2.5.2.13.2.12 php-src/ext/sybase_ct/php_sybase_ct.c:1.103.2.5.2.13.2.13 --- php-src/ext/sybase_ct/php_sybase_ct.c:1.103.2.5.2.13.2.12 Sun Nov 9 11:39:14 2008 +++ php-src/ext/sybase_ct/php_sybase_ct.c Mon Nov 10 10:59:44 2008 @@ -18,7 +18,7 @@+----------------------------------------------------------------------+*/ -/* $Id: php_sybase_ct.c,v 1.103.2.5.2.13.2.12 2008/11/09 11:39:14 thekid Exp $ */ +/* $Id: php_sybase_ct.c,v 1.103.2.5.2.13.2.13 2008/11/10 10:59:44 thekid Exp $ */ #ifdef HAVE_CONFIG_H @@ -49,6 +49,7 @@ ZEND_ARG_INFO(0, password) ZEND_ARG_INFO(0, charset) ZEND_ARG_INFO(0, appname) + ZEND_ARG_INFO(0, new) ZEND_END_ARG_INFO() static @@ -753,13 +754,19 @@ { char *user, *passwd, *host, *charset, *appname; char *hashed_details; - int hashed_details_length; - int len; + int hashed_details_length, len; + zend_bool new = 0; sybase_link *sybase_ptr; host= user= passwd= charset= appname= NULL; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sssss", &host, &len, &user, &len, &passwd, &len, &charset, &len, &appname, &len) == FAILURE) { - return; + if (persistent) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s!s!s!s!s!", &host, &len, &user, &len, &passwd, &len, &charset, &len, &appname, &len) == FAILURE) { + return; + } + } else { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s!s!s!s!s!b", &host, &len, &user, &len, &passwd, &len, &charset, &len, &appname, &len, &new) == FAILURE) { + return; + } } hashed_details_length = spprintf( &hashed_details, @@ -865,7 +872,7 @@ * if it doesn't, open a new sybase link, add it to the resource list, * and add a pointer to it with hashed_details as the key. */ - if (zend_hash_find(&EG(regular_list), hashed_details, hashed_details_length+1, (void **) &index_ptr)==SUCCESS) { + if (!new && zend_hash_find(&EG(regular_list), hashed_details, hashed_details_length+1, (void **) &index_ptr)==SUCCESS) { int type, link; void *ptr; @@ -929,7 +936,7 @@ } -/* {{{ proto int sybase_connect([string host [, string user [, string password [, string charset [, string appname]]]]]) +/* {{{ proto int sybase_connect([string host [, string user [, string password [, string charset [, string appname [, bool new]]]]]])Open Sybase server connection */PHP_FUNCTION(sybase_connect) {