iliaa           Sun Feb 16 10:56:57 2003 EDT

  Modified files:              
    /php4/ext/mysqli    mysqli_api.c php_mysqli.h 
  Log:
  Moved longlong conversion to a macro.
  
  
Index: php4/ext/mysqli/mysqli_api.c
diff -u php4/ext/mysqli/mysqli_api.c:1.10 php4/ext/mysqli/mysqli_api.c:1.11
--- php4/ext/mysqli/mysqli_api.c:1.10   Sun Feb 16 07:03:37 2003
+++ php4/ext/mysqli/mysqli_api.c        Sun Feb 16 10:56:57 2003
@@ -15,7 +15,7 @@
   | Author: Georg Richter <[EMAIL PROTECTED]>                                |
   +----------------------------------------------------------------------+
 
-  $Id: mysqli_api.c,v 1.10 2003/02/16 12:03:37 georg Exp $ 
+  $Id: mysqli_api.c,v 1.11 2003/02/16 15:56:57 iliaa Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -36,8 +36,7 @@
 {
        MYSQL                   *mysql;
        zval                    *mysql_link;
-       my_ulonglong    rc;
-       char                    ret[40];
+       my_ulonglong            rc;
 
        if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", 
&mysql_link, mysqli_link_class_entry) == FAILURE) {
                return;
@@ -46,11 +45,7 @@
        MYSQLI_FETCH_RESOURCE(mysql, MYSQL *, &mysql_link, "mysqli_link"); 
 
        rc = mysql_affected_rows(mysql);
-       if (rc != (long)rc) {
-               sprintf((char *)&ret, "%llu", rc);
-               RETURN_STRING(ret,1);
-       } 
-       RETURN_LONG(rc);
+       MYSQLI_RETURN_LONG_LONG(rc);
 }
 /* }}} */
 
@@ -648,7 +643,7 @@
                                                        my_ulonglong lval;
                                                        memcpy (&lval, 
stmt->bind[i].buffer, sizeof(my_ulonglong));
                                                        if (lval != (long)lval) {
-                                                               sprintf((char *)&tmp, 
"%lld", lval);
+                                                               sprintf((char *)&tmp, 
+"%llu", lval);
                                                                
ZVAL_STRING(stmt->vars[i], tmp, 1);
                                                        } else {
                                                                
ZVAL_LONG(stmt->vars[i], lval);
@@ -1000,8 +995,7 @@
 PHP_FUNCTION(mysqli_insert_id)
 {
        MYSQL                   *mysql;
-       my_ulonglong    rc;
-       char                    ret[50];
+       my_ulonglong            rc;
        zval                    *mysql_link;
 
        if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", 
&mysql_link, mysqli_link_class_entry) == FAILURE) {
@@ -1009,12 +1003,7 @@
        }
        MYSQLI_FETCH_RESOURCE(mysql, MYSQL *, &mysql_link, "mysqli_link"); 
        rc = mysql_insert_id(mysql);
-
-       if (rc != (long)rc) {
-               sprintf((char *)&ret, "%llu", rc);
-               RETURN_STRING(ret,1);
-       } 
-       RETURN_LONG(rc);
+       MYSQLI_RETURN_LONG_LONG(rc)
 }
 /* }}} */
 
@@ -1503,8 +1492,7 @@
 {
        STMT                    *stmt;
        zval                    *mysql_stmt;
-       my_ulonglong    rc;
-       char                    ret[50];
+       my_ulonglong            rc;
 
        if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", 
&mysql_stmt, mysqli_stmt_class_entry) == FAILURE) {
                return;
@@ -1512,12 +1500,7 @@
        MYSQLI_FETCH_RESOURCE(stmt, STMT *, &mysql_stmt, "mysqli_stmt");
 
        rc = mysql_stmt_affected_rows(stmt->stmt);
-       if (rc != (long)rc) {
-               sprintf((char *)&ret, "%llu", rc);
-               RETURN_STRING(ret, 1); 
-       }
-
-       RETURN_LONG(rc);
+       MYSQLI_RETURN_LONG_LONG(rc)
 }
 /* }}} */
 
Index: php4/ext/mysqli/php_mysqli.h
diff -u php4/ext/mysqli/php_mysqli.h:1.7 php4/ext/mysqli/php_mysqli.h:1.8
--- php4/ext/mysqli/php_mysqli.h:1.7    Sun Feb 16 07:03:37 2003
+++ php4/ext/mysqli/php_mysqli.h        Sun Feb 16 10:56:57 2003
@@ -15,7 +15,7 @@
   | Author: Georg Richter <[EMAIL PROTECTED]>                                |
   +----------------------------------------------------------------------+
 
-  $Id: php_mysqli.h,v 1.7 2003/02/16 12:03:37 georg Exp $ 
+  $Id: php_mysqli.h,v 1.8 2003/02/16 15:56:57 iliaa Exp $ 
 */
 
 /* A little hack to prevent build break, when mysql is used together with
@@ -119,6 +119,17 @@
 { \
        mysqli_object *intern = (mysqli_object *)zend_object_store_get_object(*(__id) 
TSRMLS_CC);\
        intern->ptr = NULL; \
+}
+
+#define MYSQLI_RETURN_LONG_LONG(__val) \
+{ \
+       if ((__val) < LONG_MAX) {               \
+               RETURN_LONG((__val));           \
+       } else {                                \
+               char ret[40];                   \
+               sprintf(ret, "%llu", (__val));  \
+               RETURN_STRING(ret,1);           \
+       }                                       \
 }
 
 #define MYSQLI_STORE_RESULT    0



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

Reply via email to