- encodings support exists with ext/zlib too
[m6w6/ext-http] / http_request_api.c
index 35404f144e7a42f5617eb141e128ed8edfc0956f..1acd53ad57044625eecd98d50c85a2ee73d1ff3f 100644 (file)
@@ -436,7 +436,7 @@ PHP_HTTP_API STATUS _http_request_init(CURL *ch, http_request_method meth, char
 
        /* compress, empty string enables all supported if libcurl was build with zlib support */
        if ((zoption = http_curl_getopt(options, "compress", IS_BOOL)) && Z_LVAL_P(zoption)) {
-#ifdef HTTP_HAVE_ZLIB
+#if defined(HTTP_HAVE_ZLIB) || defined(HAVE_ZLIB)
                HTTP_CURL_OPT(ENCODING, "gzip;q=1.0, deflate;q=0.5, *;q=0");
 #else
                HTTP_CURL_OPT(ENCODING, "");
@@ -542,12 +542,15 @@ PHP_HTTP_API STATUS _http_request_init(CURL *ch, http_request_method meth, char
 
        /* lastmodified */
        if (zoption = http_curl_getopt(options, "lastmodified", IS_LONG)) {
-               if (Z_LVAL_P(zoption) > 0) {
+               if (Z_LVAL_P(zoption)) {
+                       if (Z_LVAL_P(zoption) > 0) {
+                               HTTP_CURL_OPT(TIMEVALUE, Z_LVAL_P(zoption));
+                       } else {
+                               HTTP_CURL_OPT(TIMEVALUE, time(NULL) + Z_LVAL_P(zoption));
+                       }
                        HTTP_CURL_OPT(TIMECONDITION, range_req ? CURL_TIMECOND_IFUNMODSINCE : CURL_TIMECOND_IFMODSINCE);
-                       HTTP_CURL_OPT(TIMEVALUE, Z_LVAL_P(zoption));
                } else {
                        HTTP_CURL_OPT(TIMECONDITION, CURL_TIMECOND_NONE);
-                       HTTP_CURL_OPT(TIMEVALUE, 0);
                }
        }