diff --git a/lib/libwebsockets.c b/lib/libwebsockets.c index 5a28f305..4b5ec8bf 100644 --- a/lib/libwebsockets.c +++ b/lib/libwebsockets.c @@ -2946,11 +2946,14 @@ libwebsocket_create_context(int port, const char *interf, m = LWS_EXT_CALLBACK_CLIENT_CONTEXT_CONSTRUCT; if (port) m = LWS_EXT_CALLBACK_SERVER_CONTEXT_CONSTRUCT; - while (extensions->callback) { - debug(" Extension: %s\n", extensions->name); - extensions->callback(context, extensions, - NULL, m, NULL, NULL, 0); - extensions++; + + if (extensions) { + while (extensions->callback) { + debug(" Extension: %s\n", extensions->name); + extensions->callback(context, extensions, + NULL, m, NULL, NULL, 0); + extensions++; + } } return context;