[PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c

2003-01-22 Thread Ilia Alshanetsky
iliaa   Wed Jan 22 17:07:27 2003 EDT

  Modified files:  
/php4/ext/sybase_ct php_sybase_ct.c 
  Log:
  Removed non-needed code.
  
  
Index: php4/ext/sybase_ct/php_sybase_ct.c
diff -u php4/ext/sybase_ct/php_sybase_ct.c:1.79 php4/ext/sybase_ct/php_sybase_ct.c:1.80
--- php4/ext/sybase_ct/php_sybase_ct.c:1.79 Wed Jan 15 08:55:32 2003
+++ php4/ext/sybase_ct/php_sybase_ct.c  Wed Jan 22 17:07:22 2003
@@ -18,7 +18,7 @@
+--+
  */
 
-/* $Id: php_sybase_ct.c,v 1.79 2003/01/15 13:55:32 iliaa Exp $ */
+/* $Id: php_sybase_ct.c,v 1.80 2003/01/22 22:07:22 iliaa Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
@@ -1262,8 +1262,7 @@
if (sybase_ptr-active_result_index) {
zval *tmp = NULL;

-   php_error_docref(NULL TSRMLS_CC, E_NOTICE, Sybase:  Called %s() 
without first fetching all rows from a previous unbuffered query,
-   get_active_function_name(TSRMLS_C));
+   php_error_docref(NULL TSRMLS_CC, E_NOTICE, called without first 
+fetching all rows from a previous unbuffered query);
if (sybase_ptr-cmd) {
ct_cancel(NULL, sybase_ptr-cmd, CS_CANCEL_ALL);
}
@@ -2058,7 +2057,7 @@
}
 
if (!zend_is_callable(*params[0], 0, name)) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, %s(): First argumented is 
expected to be a valid callback, '%s' was given, get_active_function_name(TSRMLS_C), 
name);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, First argumented is 
+expected to be a valid callback, '%s' was given, name);
efree(name);
efree(params);
RETURN_FALSE;



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c

2003-01-11 Thread Ilia Alshanetsky
iliaa   Sat Jan 11 18:06:35 2003 EDT

  Modified files:  
/php4/ext/sybase_ct php_sybase_ct.c 
  Log:
  Fixed handling of NUMERIC type, when it contains numbers that could 
  potentially exceed the interger limit.
  
  
Index: php4/ext/sybase_ct/php_sybase_ct.c
diff -u php4/ext/sybase_ct/php_sybase_ct.c:1.75 php4/ext/sybase_ct/php_sybase_ct.c:1.76
--- php4/ext/sybase_ct/php_sybase_ct.c:1.75 Tue Dec 31 11:07:58 2002
+++ php4/ext/sybase_ct/php_sybase_ct.c  Sat Jan 11 18:06:35 2003
@@ -18,7 +18,7 @@
+--+
  */
 
-/* $Id: php_sybase_ct.c,v 1.75 2002/12/31 16:07:58 sebastian Exp $ */
+/* $Id: php_sybase_ct.c,v 1.76 2003/01/11 23:06:35 iliaa Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
@@ -1168,7 +1168,7 @@
case CS_DECIMAL_TYPE:
result-datafmt[i].maxlength = 
result-datafmt[i].precision + 3;
/* numeric(10) vs numeric(10, 1) */
-   result-numerics[i] = (result-datafmt[i].scale == 0) 
? 1 : 2;
+   result-numerics[i] = (result-datafmt[i].scale == 0 
+ result-datafmt[i].precision = 10) ? 1 : 2;
break;
default:
result-datafmt[i].maxlength++;



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c

2003-01-11 Thread Ilia Alshanetsky
iliaa   Sat Jan 11 18:50:37 2003 EDT

  Modified files:  
/php4/ext/sybase_ct php_sybase_ct.c 
  Log:
  Do not 'convert' double columns to integers after the 1st row in the result
  set.
  
  
Index: php4/ext/sybase_ct/php_sybase_ct.c
diff -u php4/ext/sybase_ct/php_sybase_ct.c:1.76 php4/ext/sybase_ct/php_sybase_ct.c:1.77
--- php4/ext/sybase_ct/php_sybase_ct.c:1.76 Sat Jan 11 18:06:35 2003
+++ php4/ext/sybase_ct/php_sybase_ct.c  Sat Jan 11 18:50:37 2003
@@ -18,7 +18,7 @@
+--+
  */
 
-/* $Id: php_sybase_ct.c,v 1.76 2003/01/11 23:06:35 iliaa Exp $ */
+/* $Id: php_sybase_ct.c,v 1.77 2003/01/11 23:50:37 iliaa Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
@@ -1059,7 +1059,7 @@
convert_to_long(result-data[i][j]);
break;
case 2: 
-   
convert_to_double(result-data[i][j]); result-numerics[j]= 1; 
+   convert_to_double(result-data[i][j]);
break;
}
}



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c

2002-12-09 Thread Markus Fischer
Make a separate checkout in an empty directory and try this:

cvs co -r PHP_4_3 php4/ext/sybase_ct/php_sybase_ct.c

On Sun, Dec 08, 2002 at 04:01:32PM +0100, Timm Friebe wrote : 
 On Sun, 2002-12-08 at 10:28, Jani Taskinen wrote:
  MFH??
  
  --Jani
 
 I'm sorry, I've tried the following:
 
 $ cvs update -j PHP_4_3 ext/sybase_ct/php_sybase_ct.c
   doesn't do anything, nor does:
 $ cvs update -j PHP_4_3 -j 1.74 ext/sybase_ct/php_sybase_ct.c
 
 Then again:
 $ cvs update -j 1.74 -j PHP_4_3 ext/sybase_ct/php_sybase_ct.c
   wants to remove php_sybase_ct.c
 
 cvs server: scheduling ext/sybase_ct/php_sybase_ct.c for removal
 $ cvs status -v ext/sybase_ct/php_sybase_ct.c
 ===
 File: no file php_sybase_ct.c   Status: Locally Removed
 
Working revision:-1.74
Repository revision: 1.74   
 /repository/php4/ext/sybase_ct/php_sybase_ct.c,v
Sticky Tag:  (none)
Sticky Date: (none)
Sticky Options:  (none)
 
 OK, so this is _definitely_ not what I want.
 
 So, currently, this is what is showing (and what was showing before,
 e.g. yesterday):
 $ cvs status -v ext/sybase_ct/php_sybase_ct.c
 ===
 File: php_sybase_ct.c   Status: Up-to-date
 
Working revision:1.74
Repository revision: 1.74   
 /repository/php4/ext/sybase_ct/php_sybase_ct.c,v
Sticky Tag:  (none)
Sticky Date: (none)
Sticky Options:  (none)
 
Existing Tags:
 php_4_3_0RC2(revision: 1.73)
 php_4_3_0RC1(revision: 1.73)
 PHP_4_3 (branch: 1.73.2)
 php_4_3_0pre2   (revision: 1.70)
 php_4_3_0pre1   (revision: 1.70)
 php_4_3_0_dev_zend2_alpha3  (revision: 1.70)
 [...shortened for brevity...]
 
 What's wrong? How does this magic MFH (merge from head?) work? I mean,
 I see it all the time, and have been reading
 http://www.cvshome.org/docs/manual/cvs_5.html#SEC54 for a while now, but
 don't seem to get what I have to do to make the PHP_4_3 branch contain
 the contents of HEAD (1.74).
 
 I know you're not here to support CVS lamers... maybe you can give me a
 hint, anyway?
 
  On Sat, 7 Dec 2002, Timm Friebe wrote:
  
  thekid Sat Dec  7 14:49:31 2002 EDT
  
Modified files:  
  /php4/ext/sybase_ctphp_sybase_ct.c 
Log:
- Fixed three memory leaks
- Fixed segfault with sybase_unbuffered_query() and unfetched resultsets 
 [...]
 
 -- 
 Timm Friebe [EMAIL PROTECTED]
 
 
 -- 
 PHP CVS Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c

2002-12-08 Thread Jani Taskinen

MFH??

--Jani


On Sat, 7 Dec 2002, Timm Friebe wrote:

thekid Sat Dec  7 14:49:31 2002 EDT

  Modified files:  
/php4/ext/sybase_ctphp_sybase_ct.c 
  Log:
  - Fixed three memory leaks
  - Fixed segfault with sybase_unbuffered_query() and unfetched resultsets 
  
  
Index: php4/ext/sybase_ct/php_sybase_ct.c
diff -u php4/ext/sybase_ct/php_sybase_ct.c:1.73 
php4/ext/sybase_ct/php_sybase_ct.c:1.74
--- php4/ext/sybase_ct/php_sybase_ct.c:1.73Tue Nov 12 17:59:11 2002
+++ php4/ext/sybase_ct/php_sybase_ct.c Sat Dec  7 14:49:31 2002
@@ -18,7 +18,7 @@
+--+
  */
 
-/* $Id: php_sybase_ct.c,v 1.73 2002/11/12 22:59:11 edink Exp $ */
+/* $Id: php_sybase_ct.c,v 1.74 2002/12/07 19:49:31 thekid Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
@@ -408,7 +408,7 @@
 {
   efree(SybCtG(appname));
   if (SybCtG(callback_name)) {
-  zval_dtor(SybCtG(callback_name));
+  zval_ptr_dtor(SybCtG(callback_name));
   SybCtG(callback_name)= NULL;
   }
   STR_FREE(SybCtG(server_message));
@@ -1261,7 +1261,7 @@
   
   /* Check to see if a previous sybase_unbuffered_query has read all rows */
   if (sybase_ptr-active_result_index) {
-  zval *tmp;
+  zval *tmp = NULL;
   
   php_error_docref(NULL TSRMLS_CC, E_NOTICE, Sybase:  Called %s() 
without first fetching all rows from a previous unbuffered query,
   get_active_function_name(TSRMLS_C));
@@ -1275,10 +1275,20 @@
   Z_TYPE_P(tmp)= IS_RESOURCE;
   INIT_PZVAL(tmp);
   ZEND_FETCH_RESOURCE(result, sybase_result *, tmp, -1, Sybase 
result, le_result);
+  
+  /* Causes the following segfault:
+ Program received signal SIGSEGV, Segmentation fault.
+ 0x8144380 in _efree (ptr=0x81fe024, __zend_filename=0x81841a0 
php4/ext/sybase_ct/php_sybase_ct.c, 
+ __zend_lineno=946, __zend_orig_filename=0x0, __zend_orig_lineno=0) 
at php4/Zend/zend_alloc.c:229
+ php4/Zend/zend_alloc.c:229:7284:beg:0x8144380
+  */
+  #if O_TIMM
   if (result) {
   php_sybase_finish_results(result);
   }
-  zval_dtor(tmp);
+  #endif
+  
+  zval_ptr_dtor(tmp);
   zend_list_delete(sybase_ptr-active_result_index);
   sybase_ptr-active_result_index= 0;
   }
@@ -1630,8 +1640,8 @@
   }
   if (numerics) {
   zend_hash_index_update(Z_ARRVAL_P(return_value), i, (void *) 
tmp, sizeof(zval *), NULL);
+  tmp-refcount++;
   }
-  tmp-refcount++;
   
   if (zend_hash_exists(Z_ARRVAL_P(return_value), result-fields[i].name, 
strlen(result-fields[i].name)+1)) {
   snprintf(name, 32, %s%d, result-fields[i].name, j);
@@ -2057,8 +2067,6 @@
   efree(params);
   RETURN_FALSE;
   }
-  
-  MAKE_STD_ZVAL(SybCtG(callback_name));
   
   ALLOC_ZVAL(SybCtG(callback_name));
   *SybCtG(callback_name) = **params[0];





-- 
- For Sale! -


-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c

2002-12-07 Thread Timm Friebe
thekid  Sat Dec  7 14:49:31 2002 EDT

  Modified files:  
/php4/ext/sybase_ct php_sybase_ct.c 
  Log:
  - Fixed three memory leaks
  - Fixed segfault with sybase_unbuffered_query() and unfetched resultsets 
  
  
Index: php4/ext/sybase_ct/php_sybase_ct.c
diff -u php4/ext/sybase_ct/php_sybase_ct.c:1.73 php4/ext/sybase_ct/php_sybase_ct.c:1.74
--- php4/ext/sybase_ct/php_sybase_ct.c:1.73 Tue Nov 12 17:59:11 2002
+++ php4/ext/sybase_ct/php_sybase_ct.c  Sat Dec  7 14:49:31 2002
@@ -18,7 +18,7 @@
+--+
  */
 
-/* $Id: php_sybase_ct.c,v 1.73 2002/11/12 22:59:11 edink Exp $ */
+/* $Id: php_sybase_ct.c,v 1.74 2002/12/07 19:49:31 thekid Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
@@ -408,7 +408,7 @@
 {
efree(SybCtG(appname));
if (SybCtG(callback_name)) {
-   zval_dtor(SybCtG(callback_name));
+   zval_ptr_dtor(SybCtG(callback_name));
SybCtG(callback_name)= NULL;
}
STR_FREE(SybCtG(server_message));
@@ -1261,7 +1261,7 @@

/* Check to see if a previous sybase_unbuffered_query has read all rows */
if (sybase_ptr-active_result_index) {
-   zval *tmp;
+   zval *tmp = NULL;

php_error_docref(NULL TSRMLS_CC, E_NOTICE, Sybase:  Called %s() 
without first fetching all rows from a previous unbuffered query,
get_active_function_name(TSRMLS_C));
@@ -1275,10 +1275,20 @@
Z_TYPE_P(tmp)= IS_RESOURCE;
INIT_PZVAL(tmp);
ZEND_FETCH_RESOURCE(result, sybase_result *, tmp, -1, Sybase 
result, le_result);
+   
+   /* Causes the following segfault:
+  Program received signal SIGSEGV, Segmentation fault.
+  0x8144380 in _efree (ptr=0x81fe024, __zend_filename=0x81841a0 
+php4/ext/sybase_ct/php_sybase_ct.c, 
+  __zend_lineno=946, __zend_orig_filename=0x0, __zend_orig_lineno=0) 
+at php4/Zend/zend_alloc.c:229
+  php4/Zend/zend_alloc.c:229:7284:beg:0x8144380
+   */
+   #if O_TIMM
if (result) {
php_sybase_finish_results(result);
}
-   zval_dtor(tmp);
+   #endif
+   
+   zval_ptr_dtor(tmp);
zend_list_delete(sybase_ptr-active_result_index);
sybase_ptr-active_result_index= 0;
}
@@ -1630,8 +1640,8 @@
}
if (numerics) {
zend_hash_index_update(Z_ARRVAL_P(return_value), i, (void *) 
tmp, sizeof(zval *), NULL);
+   tmp-refcount++;
}
-   tmp-refcount++;

if (zend_hash_exists(Z_ARRVAL_P(return_value), result-fields[i].name, 
strlen(result-fields[i].name)+1)) {
snprintf(name, 32, %s%d, result-fields[i].name, j);
@@ -2057,8 +2067,6 @@
efree(params);
RETURN_FALSE;
}
-   
-   MAKE_STD_ZVAL(SybCtG(callback_name));

ALLOC_ZVAL(SybCtG(callback_name));
*SybCtG(callback_name) = **params[0];



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c

2002-11-12 Thread Edin Kadribasic
edink   Tue Nov 12 17:59:14 2002 EDT

  Modified files:  
/php4/ext/sybase_ct php_sybase_ct.c 
  Log:
  Fixed ZTS build and removed an unused variable.
  
  
Index: php4/ext/sybase_ct/php_sybase_ct.c
diff -u php4/ext/sybase_ct/php_sybase_ct.c:1.72 php4/ext/sybase_ct/php_sybase_ct.c:1.73
--- php4/ext/sybase_ct/php_sybase_ct.c:1.72 Tue Nov 12 08:13:12 2002
+++ php4/ext/sybase_ct/php_sybase_ct.c  Tue Nov 12 17:59:11 2002
 -18,7 +18,7 
+--+
  */
 
-/* $Id: php_sybase_ct.c,v 1.72 2002/11/12 13:13:12 thekid Exp $ */
+/* $Id: php_sybase_ct.c,v 1.73 2002/11/12 22:59:11 edink Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
 -307,6 +307,7 
 static void php_sybase_init_globals(zend_sybase_globals *sybase_globals)
 {
long timeout;
+   TSRMLS_FETCH();
 
if (cs_ctx_alloc(CTLIB_VERSION, sybase_globals-context)!=CS_SUCCEED || 
ct_init(sybase_globals-context, CTLIB_VERSION)!=CS_SUCCEED) {
return;
 -940,6 +941,7 
int i;
CS_RETCODE retcode;
CS_INT restype;
+   TSRMLS_FETCH();

efree(result-datafmt);
efree(result-lengths);
 -2025,7 +2027,6 
 PHP_FUNCTION(sybase_set_message_handler)
 {
zval ***params;
-   zval *retval_ptr;
char *name;
int argc = ZEND_NUM_ARGS();
 



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-CVS] cvs: php4 /ext/sybase_ct php_sybase_ct.c php_sybase_ct.h

2002-11-05 Thread Timm Friebe
thekid  Tue Nov  5 03:29:57 2002 EDT

  Modified files:  
/php4/ext/sybase_ct php_sybase_ct.c php_sybase_ct.h 
  Log:
  @- Implemented features/changes requested in Bug #16960 (Timm):
  @  . Added a new function sybase_unbuffered_query()
  @  . Added a new function sybase_fetch_assoc()
  @  . Added sybase_set_message_handler() which enables users to handle
  @server messages in a callback function
  @  . Added an ini entry for deadlock retries - retrying deadlocks 
  @can cause transaction state to break (sybct.deadlock_retry_count,
  @defaults to -1 forever).
  @  . Fixed sybase_fetch_object() not to return objects with numeric
  @members
  @  . Fixed issues with identical fieldnames
  @  . Made sybase_fetch_*() functions return correct datatypes
  @  . Made phpinfo() section more verbose
  @  . Made sybase_query() error messages more verbose
  
  
Index: php4/ext/sybase_ct/php_sybase_ct.c
diff -u php4/ext/sybase_ct/php_sybase_ct.c:1.70 php4/ext/sybase_ct/php_sybase_ct.c:1.71
--- php4/ext/sybase_ct/php_sybase_ct.c:1.70 Tue Mar 12 15:18:01 2002
+++ php4/ext/sybase_ct/php_sybase_ct.c  Tue Nov  5 03:29:57 2002
@@ -14,10 +14,11 @@
+--+
| Authors: Zeev Suraski [EMAIL PROTECTED]|
|  Tom May [EMAIL PROTECTED]|
+   |  Timm Friebe [EMAIL PROTECTED]   |
+--+
  */
 
-/* $Id: php_sybase_ct.c,v 1.70 2002/03/12 20:18:01 andi Exp $ */
+/* $Id: php_sybase_ct.c,v 1.71 2002/11/05 08:29:57 thekid Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
@@ -42,32 +43,38 @@
PHP_FE(sybase_close,NULL)
PHP_FE(sybase_select_db,NULL)
PHP_FE(sybase_query,NULL)
+   PHP_FE(sybase_unbuffered_query, NULL)
PHP_FE(sybase_free_result,  NULL)
PHP_FE(sybase_get_last_message, NULL)
PHP_FE(sybase_num_rows, NULL)
PHP_FE(sybase_num_fields,   NULL)
PHP_FE(sybase_fetch_row,NULL)
PHP_FE(sybase_fetch_array,  NULL)
+   PHP_FE(sybase_fetch_assoc,  NULL)
PHP_FE(sybase_fetch_object, NULL)
PHP_FE(sybase_data_seek,NULL)
PHP_FE(sybase_fetch_field,  NULL)
-   PHP_FE(sybase_field_seek,   NULL)
+   PHP_FE(sybase_field_seek,  NULL)
PHP_FE(sybase_result,   NULL)
PHP_FE(sybase_affected_rows,NULL)
PHP_FE(sybase_min_client_severity,  NULL)
PHP_FE(sybase_min_server_severity,  NULL)
+   PHP_FE(sybase_set_message_handler,  NULL)
+   PHP_FE(sybase_deadlock_retry_count, NULL)
 
PHP_FALIAS(mssql_connect,   sybase_connect,
 NULL)
PHP_FALIAS(mssql_pconnect,  sybase_pconnect,   
 NULL)
PHP_FALIAS(mssql_close, sybase_close,  
 NULL)
PHP_FALIAS(mssql_select_db, sybase_select_db,  
 NULL)
PHP_FALIAS(mssql_query, sybase_query,  
 NULL)
+   PHP_FALIAS(mssql_unbuffered_query,  sybase_unbuffered_query,NULL)
PHP_FALIAS(mssql_free_result,   sybase_free_result, NULL)
PHP_FALIAS(mssql_get_last_message,  sybase_get_last_message,NULL)
PHP_FALIAS(mssql_num_rows,  sybase_num_rows,   
 NULL)
PHP_FALIAS(mssql_num_fields,sybase_num_fields,  NULL)
PHP_FALIAS(mssql_fetch_row, sybase_fetch_row,  
 NULL)
PHP_FALIAS(mssql_fetch_array,   sybase_fetch_array, NULL)
+   PHP_FALIAS(mssql_fetch_assoc,   sybase_fetch_assoc, NULL)
PHP_FALIAS(mssql_fetch_object,  sybase_fetch_object,NULL)
PHP_FALIAS(mssql_data_seek, sybase_data_seek,  
 NULL)
PHP_FALIAS(mssql_fetch_field,   sybase_fetch_field, NULL)
@@ -76,6 +83,8 @@
PHP_FALIAS(mssql_affected_rows, sybase_affected_rows,   NULL)
PHP_FALIAS(mssql_min_client_severity,   sybase_min_client_severity, NULL)
PHP_FALIAS(mssql_min_server_severity,   sybase_min_server_severity, NULL)
+   PHP_FALIAS(mssql_set_message_handler,   sybase_set_message_handler, NULL)
+   PHP_FALIAS(mssql_deadlock_retry_count,  sybase_deadlock_retry_count, NULL)
{NULL, NULL, NULL}
 };
 
@@ -114,9 +123,9 @@
int i, j;
 
if