From fbe8cf9a408de367bc019d097b9175a4c7d09d72 Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Wed, 4 May 2011 07:53:22 +0000 Subject: [PATCH] Fixed crash when passing invalid timestamp (negative integer on win32) --- ext/soap/php_encoding.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 198f535fee..e87c84b263 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -2962,6 +2962,9 @@ static xmlNodePtr to_xml_datetime_ex(encodeTypePtr type, zval *data, char *forma timestamp = Z_LVAL_P(data); ta = php_localtime_r(×tamp, &tmbuf); /*ta = php_gmtime_r(×tamp, &tmbuf);*/ + if (!ta) { + soap_error1(E_ERROR, "Encoding: Invalid timestamp %ld", Z_LVAL_P(data)); + } buf = (char *) emalloc(buf_len); while ((real_len = strftime(buf, buf_len, format, ta)) == buf_len || real_len == 0) { -- 2.40.0