]> git.kaiwu.me - nginx.git/commitdiff
merge r3488:
authorIgor Sysoev <igor@sysoev.ru>
Mon, 7 Jun 2010 11:49:03 +0000 (11:49 +0000)
committerIgor Sysoev <igor@sysoev.ru>
Mon, 7 Jun 2010 11:49:03 +0000 (11:49 +0000)
revert partially r1555 and fix the error "memcached sent invalid trailer"

src/http/modules/ngx_http_memcached_module.c

index dc7c76719964988386d34789b111b786c1e0e1e1..4b2af10a9872fb0cabd1b57476babca0404abdec 100644 (file)
@@ -423,15 +423,20 @@ ngx_http_memcached_filter(void *data, ssize_t bytes)
 
         if (ngx_strncmp(b->last,
                    ngx_http_memcached_end + NGX_HTTP_MEMCACHED_END - ctx->rest,
-                   ctx->rest)
+                   bytes)
             != 0)
         {
             ngx_log_error(NGX_LOG_ERR, ctx->request->connection->log, 0,
                           "memcached sent invalid trailer");
+
+            u->length = 0;
+            ctx->rest = 0;
+
+            return NGX_OK;
         }
 
-        u->length = 0;
-        ctx->rest = 0;
+        u->length -= bytes;
+        ctx->rest -= bytes;
 
         return NGX_OK;
     }