Overflow numeric/decimal datatype on NT
sprintf(dt, "%%0.%df", -scale);
Z_STRLEN_P(val) = sprintf (string_data, dt, number / f);
} else {
- Z_STRLEN_P(val) = sprintf (string_data, "%.0f", (double) (ISC_INT64) (*((ISC_INT64 *) data)));
+ Z_STRLEN_P(val) =sprintf (string_data, "%.0" ISC_INT64_FORMAT "d",
+ (ISC_INT64) *(ISC_INT64 *) data);
}
Z_STRVAL_P(val) = estrdup(string_data);
#ifdef PHP_WIN32
#define PHP_IBASE_API __declspec(dllexport)
+#ifndef ISC_INT64_FORMAT
+ #define ISC_INT64_FORMAT "I64"
+#endif
#else
#define PHP_IBASE_API
+#ifndef ISC_INT64_FORMAT
+ #define ISC_INT64_FORMAT "ll"
+#endif
#endif
PHP_MINIT_FUNCTION(ibase);