bradmssw Wed Jul 9 09:48:28 2003 EDT Modified files: (Branch: PHP_4_3) /php-src/ext/mcve mcve.c Log: bugfixes: typecasting issues. don't assume long and int are the same size, as they are not on 64bit architectures. New CONSTANTS were not cast at all yet. MC_TTID was cast as a long, when it should have been a MCVE_int64 (normally long long). Index: php-src/ext/mcve/mcve.c diff -u php-src/ext/mcve/mcve.c:1.14.2.3 php-src/ext/mcve/mcve.c:1.14.2.4 --- php-src/ext/mcve/mcve.c:1.14.2.3 Mon Jul 7 23:16:38 2003 +++ php-src/ext/mcve/mcve.c Wed Jul 9 09:48:28 2003 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: mcve.c,v 1.14.2.3 2003/07/08 03:16:38 bradmssw Exp $ */ +/* $Id: mcve.c,v 1.14.2.4 2003/07/09 13:48:28 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