From 9ab0c0dcd60c45bf757ccd7eb285838b538f2034 Mon Sep 17 00:00:00 2001 From: Simon Effenberg Date: Tue, 30 Nov 2010 09:21:17 +0100 Subject: [PATCH 1/4] only new changelog entry that this was merged --- debian/changelog | 6 ++++++ 1 file changed, 6 insertions(+) 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. From d128b2437e2c26328b4fd8ba21e7f9d22a186c9c Mon Sep 17 00:00:00 2001 From: Simon Effenberg Date: Thu, 9 Dec 2010 11:54:07 +0100 Subject: [PATCH 2/4] fix missing TSRMLS_CC macro --- redis_session.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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); } From dc4afb3b75f5db404e8964b520388adca9f76482 Mon Sep 17 00:00:00 2001 From: Nicolas Favre-Felix Date: Thu, 9 Dec 2010 15:01:46 +0100 Subject: [PATCH 3/4] Bugfix in DISCARD(). --- redis.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/redis.c b/redis.c index 38e2075..c143e5f 100755 --- a/redis.c +++ b/redis.c @@ -3977,12 +3977,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) { From e23e4bcd5281896edffaad02338b68a2e41084b3 Mon Sep 17 00:00:00 2001 From: Simon Effenberg Date: Thu, 9 Dec 2010 21:00:20 +0100 Subject: [PATCH 4/4] bugfix when working more then one time on a broken connection (like the redis server crashed after the connection was initiated) --- library.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/library.c b/library.c index 408dcf8..1f01585 100644 --- a/library.c +++ b/library.c @@ -7,13 +7,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;