diff --git a/debian/changelog b/debian/changelog index 84a6b4c..6b2bdc4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +phpredis (2.0.11) unstable; urgency=low + + * Merged with upstream + + -- Simon Effenberg Tue, 30 Nov 2010 09:20:40 +0100 + phpredis (2.0.10-1) unstable; urgency=low * Fixed wrong timeout option when setting timeout to lower then 1s. diff --git a/library.c b/library.c index 446a585..2cdaf50 100644 --- a/library.c +++ b/library.c @@ -9,13 +9,14 @@ PHPAPI int redis_check_eof(RedisSock *redis_sock TSRMLS_DC) { - int eof = php_stream_eof(redis_sock->stream); + int eof = redis_sock->stream == NULL ? 1 : php_stream_eof(redis_sock->stream); int count = 0; while(eof) { if(count++ == 10) { /* too many failures */ if(redis_sock->stream) { /* close stream if still here */ php_stream_close(redis_sock->stream); redis_sock->stream = NULL; + redis_sock->status = REDIS_SOCK_STATUS_FAILED; } zend_throw_exception(redis_exception_ce, "Connection lost", 0 TSRMLS_CC); return -1; diff --git a/redis.c b/redis.c index 9ed6611..6d1a48a 100755 --- a/redis.c +++ b/redis.c @@ -4011,12 +4011,12 @@ PHP_METHOD(Redis, discard) RETURN_FALSE; } - redis_sock->mode = ATOMIC; - if (redis_sock_get(object, &redis_sock TSRMLS_CC) < 0) { RETURN_FALSE; } + redis_sock->mode = ATOMIC; + cmd_len = redis_cmd_format_static(&cmd, "DISCARD", ""); if (redis_sock_write(redis_sock, cmd, cmd_len) < 0) { diff --git a/redis_session.c b/redis_session.c index b8bef2a..827dc7f 100644 --- a/redis_session.c +++ b/redis_session.c @@ -83,7 +83,7 @@ redis_pool_free(redis_pool *pool TSRMLS_DC) { rpm = pool->head; while(rpm) { next = rpm->next; - redis_sock_disconnect(rpm->redis_sock); + redis_sock_disconnect(rpm->redis_sock TSRMLS_CC); efree(rpm->redis_sock); efree(rpm); rpm = next; @@ -195,7 +195,7 @@ PS_OPEN_FUNC(redis) } RedisSock *redis_sock = redis_sock_create(url->host, strlen(url->host), url->port, timeout); - redis_pool_add(pool, redis_sock, weight); + redis_pool_add(pool, redis_sock, weight TSRMLS_CC); php_url_free(url); }