diff options
author | dormando <dormando@rydia.net> | 2017-11-28 14:17:39 -0800 |
---|---|---|
committer | dormando <dormando@rydia.net> | 2017-11-28 14:17:39 -0800 |
commit | e6239a905d072e837baa8aa425ca0ccee2fc3e01 (patch) | |
tree | d77c263d41b61f464c0072014894c242bb619d17 /crawler.c | |
parent | dd53b5e99a8fcc20d8b64f49ffc1516732855222 (diff) | |
download | memcached-e6239a905d072e837baa8aa425ca0ccee2fc3e01.tar.gz |
metadump: don't crash if client lost
fixes previous commit :|
Diffstat (limited to 'crawler.c')
-rw-r--r-- | crawler.c | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -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) { |