diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 44c8037ba867ad1f1011a098f4e90caf4624b5ca..67c2a1c7cd1f74c8f570af924bc5f815e249c6c4 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -2635,7 +2635,7 @@ static void sip_websocket_callback(struct ast_websocket *session, struct ast_var
 		if (opcode == AST_WEBSOCKET_OPCODE_TEXT || opcode == AST_WEBSOCKET_OPCODE_BINARY) {
 			struct sip_request req = { 0, };
 
-			if (!(req.data = ast_str_create(payload_len))) {
+			if (!(req.data = ast_str_create(payload_len + 1))) {
 				goto end;
 			}