BUG/MEDIUM: muxes: Use the right argument when calling the destroy method.

When calling the mux "destroy" method, the argument should be the mux
context, not the connection. In a few instances in the mux code, the
connection was used (mainly when the session wouldn't handle the idle
connection, and the server pool was fool), and that could lead to random
segfaults.

This should be backported to 2.1, 2.0, and 1.9

(cherry picked from commit 12ffab03b6b911f4a60871b098656a29253e0e9b)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit cf44aa6efa0e23444b287fdfb73d96ecdfc52135)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/mux_h2.c b/src/mux_h2.c
index beaf79c..679a23f 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -3315,7 +3315,7 @@
 					if (eb_is_empty(&h2c->streams_by_id)) {
 						if (!srv_add_to_idle_list(objt_server(h2c->conn->target), h2c->conn))
 							/* The server doesn't want it, let's kill the connection right away */
-							h2c->conn->mux->destroy(h2c->conn);
+							h2c->conn->mux->destroy(h2c);
 						return;
 					}
 				}