From: Anatol Belski <ab@php.net>
Date: Thu, 23 Oct 2014 09:05:47 +0000 (+0200)
Subject: fix datatype mismatches
X-Git-Tag: POST_NATIVE_TLS_MERGE^2~49^2~25
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=91652cf3c7c937e96917282c978a00b859c946de;p=php

fix datatype mismatches
---

diff --git a/ext/standard/fsock.c b/ext/standard/fsock.c
index 090d3f8f32..30a6fda5d6 100644
--- a/ext/standard/fsock.c
+++ b/ext/standard/fsock.c
@@ -35,14 +35,18 @@ static void php_fsockopen_stream(INTERNAL_FUNCTION_PARAMETERS, int persistent)
 	size_t host_len;
 	zend_long port = -1;
 	zval *zerrno = NULL, *zerrstr = NULL;
-	double timeout = FG(default_socket_timeout);
-	zend_ulong conv;
+	double timeout = (double)FG(default_socket_timeout);
+#ifndef PHP_WIN32
+	time_t conv;
+#else
+	long conv;
+#endif
 	struct timeval tv;
 	char *hashkey = NULL;
 	php_stream *stream = NULL;
 	int err;
 	char *hostname = NULL;
-	zend_long hostname_len;
+	size_t hostname_len;
 	zend_string *errstr = NULL;
 
 	RETVAL_FALSE;
@@ -63,8 +67,13 @@ static void php_fsockopen_stream(INTERNAL_FUNCTION_PARAMETERS, int persistent)
 	}
 	
 	/* prepare the timeout value for use */
-	conv = (unsigned long) (timeout * 1000000.0);
+#ifndef PHP_WIN32
+	conv = (time_t) (timeout * 1000000.0);
 	tv.tv_sec = conv / 1000000;
+#else
+	conv = (long) (timeout * 1000000.0);
+	tv.tv_sec = conv / 1000000;
+#endif
 	tv.tv_usec = conv % 1000000;
 
 	if (zerrno)	{