X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_misc.c;h=e4411e0aaf39efb2e654e46913d8287ec0beb001;hp=8caa319cf7310aa8d7e5dd32652572ee2e5fc126;hb=0e89d506db19cab9581a7317e0494001941a8c70;hpb=4d708279b6956fc95b253ddc88671fb2f0e5aa39 diff --git a/php_http_misc.c b/php_http_misc.c index 8caa319..e4411e0 100644 --- a/php_http_misc.c +++ b/php_http_misc.c @@ -6,17 +6,14 @@ | modification, are permitted provided that the conditions mentioned | | in the accompanying LICENSE file are met. | +--------------------------------------------------------------------+ - | Copyright (c) 2004-2010, Michael Wallner | + | Copyright (c) 2004-2011, Michael Wallner | +--------------------------------------------------------------------+ */ -/* $Id $ */ - -#include "php_http.h" +#include "php_http_api.h" #include -#include -#include +#include /* SLEEP */ @@ -39,7 +36,7 @@ PHP_HTTP_API void php_http_sleep(double s) #else struct timeval timeout; - timeout.tv.sec = (time_t) s; + timeout.tv_sec = (time_t) s; timeout.tv_usec = PHP_HTTP_USEC(s) % PHP_HTTP_MCROSEC; select(0, NULL, NULL, NULL, &timeout); @@ -53,6 +50,10 @@ int php_http_match(const char *haystack_str, const char *needle_str, int flags) { int result = 0; + if (!haystack_str || !needle_str) { + return result; + } + if (flags & PHP_HTTP_MATCH_FULL) { if (flags & PHP_HTTP_MATCH_CASE) { result = !strcmp(haystack_str, needle_str); @@ -142,7 +143,7 @@ int php_http_array_apply_append_func(void *pDest TSRMLS_DC, int num_args, va_lis } add_next_index_zval(*data, *value); } else if (key) { - zend_hash_add(dst, key, hash_key->nKeyLength, value, sizeof(zval *), NULL); + zend_symtable_update(dst, key, hash_key->nKeyLength, value, sizeof(zval *), NULL); } else { zend_hash_quick_add(dst, hash_key->arKey, hash_key->nKeyLength, hash_key->h, value, sizeof(zval *), NULL); } @@ -195,7 +196,7 @@ static inline int scope_error_handling(long type TSRMLS_DC) return EH_THROW; } - if (EG(This) && instanceof_function(Z_OBJCE_P(EG(This)), php_http_object_class_entry)) { + if (EG(This) && instanceof_function(Z_OBJCE_P(EG(This)), php_http_object_class_entry TSRMLS_CC)) { return php_http_object_get_error_handling(EG(This) TSRMLS_CC); } @@ -212,7 +213,7 @@ void php_http_error(long type TSRMLS_DC, long code, const char *format, ...) char *message; zend_class_entry *ce = php_http_exception_class_entry; - if (0&& EG(exception_class) && instanceof_function(EG(exception_class), php_http_exception_class_entry)) { + if (0&& EG(exception_class) && instanceof_function(EG(exception_class), php_http_exception_class_entry TSRMLS_CC)) { ce = EG(exception_class); }