summaryrefslogtreecommitdiff
path: root/crawler.c
diff options
context:
space:
mode:
authordormando <dormando@rydia.net>2017-11-28 14:17:39 -0800
committerdormando <dormando@rydia.net>2017-11-28 14:17:39 -0800
commite6239a905d072e837baa8aa425ca0ccee2fc3e01 (patch)
treed77c263d41b61f464c0072014894c242bb619d17 /crawler.c
parentdd53b5e99a8fcc20d8b64f49ffc1516732855222 (diff)
downloadmemcached-e6239a905d072e837baa8aa425ca0ccee2fc3e01.tar.gz
metadump: don't crash if client lost
fixes previous commit :|
Diffstat (limited to 'crawler.c')
-rw-r--r--crawler.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/crawler.c b/crawler.c
index ffece3e..b38ad7e 100644
--- a/crawler.c
+++ b/crawler.c
@@ -249,10 +249,12 @@ static void crawler_metadump_eval(crawler_module_t *cm, item *it, uint32_t hv, i
}
static void crawler_metadump_finalize(crawler_module_t *cm) {
- // Ensure space for final message.
- lru_crawler_client_getbuf(&cm->c);
- memcpy(cm->c.cbuf, "END\r\n", 5);
- bipbuf_push(cm->c.buf, 5);
+ if (cm->c.c != NULL) {
+ // Ensure space for final message.
+ lru_crawler_client_getbuf(&cm->c);
+ memcpy(cm->c.cbuf, "END\r\n", 5);
+ bipbuf_push(cm->c.buf, 5);
+ }
}
static int lru_crawler_poll(crawler_client_t *c) {