]> git.kaiwu.me - nginx.git/commitdiff
revert partially r1555 and fix the error "memcached sent invalid trailer"
authorIgor Sysoev <igor@sysoev.ru>
Thu, 1 Apr 2010 15:16:22 +0000 (15:16 +0000)
committerIgor Sysoev <igor@sysoev.ru>
Thu, 1 Apr 2010 15:16:22 +0000 (15:16 +0000)
src/http/modules/ngx_http_memcached_module.c

index 2dae38a4b738d88394463700c255a40e8a917198..090a285d3149113ecc22b29a40f4fdcb62ce6703 100644 (file)
@@ -432,15 +432,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;
     }