diff options
Diffstat (limited to 'thread.c')
-rw-r--r-- | thread.c | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -442,7 +442,7 @@ static void setup_thread(LIBEVENT_THREAD *me) { } #ifdef EXTSTORE - me->io_cache = cache_create("io", sizeof(io_wrap), sizeof(char*), NULL, NULL); + me->io_cache = cache_create("io", sizeof(io_pending_t), sizeof(char*), NULL, NULL); if (me->io_cache == NULL) { fprintf(stderr, "Failed to create IO object cache\n"); exit(EXIT_FAILURE); @@ -538,6 +538,15 @@ static void thread_libevent_process(evutil_socket_t fd, short which, void *arg) } } else { c->thread = me; +#ifdef EXTSTORE + if (c->thread->storage) { + conn_io_queue_add(c, IO_QUEUE_EXTSTORE, c->thread->storage, storage_submit_cb, storage_free_cb); + } +#endif +#ifdef EXTSTORE + conn_io_queue_add(c, IO_QUEUE_NONE, NULL, NULL, NULL); +#endif + #ifdef TLS if (settings.ssl_enabled && c->ssl != NULL) { assert(c->thread && c->thread->ssl_wbuf); |