bradmssw                Wed Jul  9 09:45:19 2003 EDT

  Modified files:              
    /php-src/ext/mcve   mcve.c 
  Log:
  fix typecasting errors, especially for new constants. Don't assume long and int are 
the same size, as on 64bit architectures, they are normally not
  
Index: php-src/ext/mcve/mcve.c
diff -u php-src/ext/mcve/mcve.c:1.20 php-src/ext/mcve/mcve.c:1.21
--- php-src/ext/mcve/mcve.c:1.20        Mon Jul  7 22:59:50 2003
+++ php-src/ext/mcve/mcve.c     Wed Jul  9 09:45:19 2003
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: mcve.c,v 1.20 2003/07/08 02:59:50 bradmssw Exp $ */
+/* $Id: mcve.c,v 1.21 2003/07/09 13:45:19 bradmssw Exp $ */
 
 /* standard php include(s) */
 #include "php.h"
@@ -588,7 +588,6 @@
 */
 PHP_FUNCTION(mcve_setssl_files)
 {
-       MCVE_CONN *conn;
        int retval;
        zval **arg1, **arg2;
 
@@ -841,29 +840,53 @@
        convert_to_long_ex(arg2);
 
        switch (key) {
-               case MC_TRANTYPE:
-               case MC_PTRANNUM:
+               /* Typecast to MCVE_int64 */
                case MC_TTID:
+                       convert_to_long_ex(arg4);
+                       retval = MCVE_TransParam(conn, (long)Z_LVAL_PP(arg2), key, 
(MCVE_int64)Z_LVAL_PP(arg4));
+               break;
+
+               /* Typecast to long */
+
+               case MC_PTRANNUM:
+               case MC_TIMESTAMP:
+               case MC_MARKER:
+                       convert_to_long_ex(arg4);
+                       retval = MCVE_TransParam(conn, (long)Z_LVAL_PP(arg2), key, 
(long)Z_LVAL_PP(arg4));
+               break;
+
+               /* Typecast to int */
                case MC_ADMIN:
+               case MC_SUB:
+               case MC_TRANTYPE:
                case MC_AUDITTYPE:
+               case MC_EXCHARGES:
+               case MC_INQUIRY:
+               case MC_PRIORITY:
+               case MC_CARDTYPES:
+               case MC_ORIGTYPE:
+               case MC_VOIDORIGTYPE:
                        convert_to_long_ex(arg4);
-                       retval = MCVE_TransParam(conn, Z_LVAL_PP(arg2), key, 
Z_LVAL_PP(arg4));
+                       retval = MCVE_TransParam(conn, (long)Z_LVAL_PP(arg2), key, 
(int)Z_LVAL_PP(arg4));
                break;
 
+               /* Typecast to double */
                case MC_AMOUNT:
+               case MC_EXAMOUNT:
+               case MC_RATE:
                        convert_to_double_ex(arg4);
-                       retval = MCVE_TransParam(conn, Z_LVAL_PP(arg2), key, 
Z_DVAL_PP(arg4));
+                       retval = MCVE_TransParam(conn, (long)Z_LVAL_PP(arg2), key, 
(double)Z_DVAL_PP(arg4));
                break;
 
                case MC_CUSTOM:
                        convert_to_string_ex(arg4);
                        convert_to_string_ex(arg5);
-                       retval = MCVE_TransParam(conn, Z_LVAL_PP(arg2), key, 
Z_STRVAL_PP(arg4), Z_STRVAL_PP(arg5));
+                       retval = MCVE_TransParam(conn, (long)Z_LVAL_PP(arg2), key, 
Z_STRVAL_PP(arg4), Z_STRVAL_PP(arg5));
                break;
 
                default:
                        convert_to_string_ex(arg4);
-                       retval = MCVE_TransParam(conn, Z_LVAL_PP(arg2), key, 
Z_STRVAL_PP(arg4));
+                       retval = MCVE_TransParam(conn, (long)Z_LVAL_PP(arg2), key, 
Z_STRVAL_PP(arg4));
                break;
        }
 



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

Reply via email to