projects
/
m6w6
/
ext-http
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
- gzip responses
[m6w6/ext-http]
/
http_request_api.c
diff --git
a/http_request_api.c
b/http_request_api.c
index 777fd7be0e3ce653a2357ed674ae9bf2d79adab5..b2da719eae325f4d87975739530a02a805b5b6ae 100644
(file)
--- a/
http_request_api.c
+++ b/
http_request_api.c
@@
-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)) {
/* 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(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);
} else {
HTTP_CURL_OPT(TIMECONDITION, CURL_TIMECOND_NONE);
- HTTP_CURL_OPT(TIMEVALUE, 0);
}
}
}
}
@@
-949,6
+952,7
@@
static inline void _http_curl_defaults(CURL *ch)
HTTP_CURL_OPT(COOKIEJAR, NULL);
HTTP_CURL_OPT(RESUME_FROM, 0);
HTTP_CURL_OPT(MAXFILESIZE, 0);
HTTP_CURL_OPT(COOKIEJAR, NULL);
HTTP_CURL_OPT(RESUME_FROM, 0);
HTTP_CURL_OPT(MAXFILESIZE, 0);
+ HTTP_CURL_OPT(TIMECONDITION, 0);
HTTP_CURL_OPT(TIMEVALUE, 0);
HTTP_CURL_OPT(TIMEOUT, 0);
HTTP_CURL_OPT(CONNECTTIMEOUT, 3);
HTTP_CURL_OPT(TIMEVALUE, 0);
HTTP_CURL_OPT(TIMEOUT, 0);
HTTP_CURL_OPT(CONNECTTIMEOUT, 3);