diff --git a/include/proto/h1.h b/include/proto/h1.h
index 51e8834..4914d51 100644
--- a/include/proto/h1.h
+++ b/include/proto/h1.h
@@ -121,7 +121,7 @@
 }
 
 /* for debugging, reports the HTTP/1 message state name */
-static inline const char *h1m_state_str(enum h1_state msg_state)
+static inline const char *h1m_state_str(enum h1m_state msg_state)
 {
 	switch (msg_state) {
 	case H1_MSG_RQBEFORE:    return "MSG_RQBEFORE";
diff --git a/src/mux_h2.c b/src/mux_h2.c
index 2839ea1..206ecb8 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -3269,7 +3269,7 @@
 	/* now the h1m state is either H1_MSG_CHUNK_SIZE or H1_MSG_DATA */
 
  end:
-	//fprintf(stderr, "[%d] sent simple H2 response (sid=%d) = %d bytes (%d in, ep=%u, es=%s)\n", h2c->st0, h2s->id, outbuf.len, ret, h1m->err_pos, h1_msg_state_str(h1m->err_state));
+	//fprintf(stderr, "[%d] sent simple H2 response (sid=%d) = %d bytes (%d in, ep=%u, es=%s)\n", h2c->st0, h2s->id, outbuf.len, ret, h1m->err_pos, h1m_state_str(h1m->err_state));
 	return ret;
  full:
 	h1m_init_res(h1m);
@@ -3529,7 +3529,7 @@
 	}
 
  end:
-	trace("[%d] sent simple H2 DATA response (sid=%d) = %d bytes out (%u in, st=%s, ep=%u, es=%s, h2cws=%d h2sws=%d) data=%u", h2c->st0, h2s->id, size+9, (unsigned int)total, h1_msg_state_str(h1m->state), h1m->err_pos, h1_msg_state_str(h1m->err_state), h2c->mws, h2s->mws, (unsigned int)b_data(buf));
+	trace("[%d] sent simple H2 DATA response (sid=%d) = %d bytes out (%u in, st=%s, ep=%u, es=%s, h2cws=%d h2sws=%d) data=%u", h2c->st0, h2s->id, size+9, (unsigned int)total, h1m_state_str(h1m->state), h1m->err_pos, h1m_state_str(h1m->err_state), h2c->mws, h2s->mws, (unsigned int)b_data(buf));
 	return total;
 }
 
