BUG/MINOR: debug: Don't dump the lua stack if it is not initialized

When the watchdog is fired because of the lua, the stack of the corresponding
lua context is dumped. But we must be sure the lua context is fully initialized
to do so. If we are blocked on the global lua lock, during the lua context
initialization, the lua stask may be NULL.

This patch should fix the issue #776. It must be backported as far as 2.0.

(cherry picked from commit 471425f51d71d1214abeee40439a51a2a3217102)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit f9f875213809d0d08857def5ce4f76d6b747fbd6)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 1641153b210f9cc6a7d0f0650a4a5313d0fb8919)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/debug.c b/src/debug.c
index 1fb1864..58b5583 100644
--- a/src/debug.c
+++ b/src/debug.c
@@ -161,11 +161,13 @@
 		chunk_appendf(buf, "%sCurrent executing a Lua HTTP service -- ", pfx);
 	}
 
-	if (hlua) {
+	if (hlua && hlua->T) {
 		luaL_traceback(hlua->T, hlua->T, NULL, 0);
 		if (!append_prefixed_str(buf, lua_tostring(hlua->T, -1), pfx, '\n', 1))
 			b_putchr(buf, '\n');
 	}
+	else
+		b_putchr(buf, '\n');
 #endif
 }