From: Ard Biesheuvel Date: Thu, 4 Sep 2003 14:44:34 +0000 (+0000) Subject: Don't rely on sizeof(int) == 4 X-Git-Tag: RELEASE_0_7~240 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f4511d4aae675acd4b56de01401ce94e1cc4b57c;p=php Don't rely on sizeof(int) == 4 --- diff --git a/ext/interbase/interbase.c b/ext/interbase/interbase.c index 408586a8a6..ed0c1b197e 100644 --- a/ext/interbase/interbase.c +++ b/ext/interbase/interbase.c @@ -52,6 +52,9 @@ #define SAFE_STRING(s) ((s)?(s):"") +#define ISC_LONG_MIN (-ISC_LONG_MAX - 1) +#define ISC_LONG_MAX 2147483647 + #ifdef PHP_WIN32 # ifndef ISC_UINT64 # define ISC_UINT64 unsigned __int64 @@ -1363,7 +1366,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval **b_vars, BIND_BUF *buf, ibase_qu convert_to_long(b_var); #if (SIZEOF_LONG > 4) /* ISC_LONG is always 32-bit */ - if (Z_LVAL_P(b_var) > INT_MAX || Z_LVAL_P(b_var) < INT_MIN) { + if (Z_LVAL_P(b_var) > ISC_LONG_MAX || Z_LVAL_P(b_var) < ISC_LONG_MIN) { _php_ibase_module_error("Parameter %d exceeds field width" TSRMLS_CC, i+1); rv = FAILURE; }