diff --git a/main/rtp_engine.c b/main/rtp_engine.c
index 1c734778fd3c4da118451675af52228260ba1f37..74243240e75a71ed09dbe69ae444872868cc297c 100644
--- a/main/rtp_engine.c
+++ b/main/rtp_engine.c
@@ -2928,6 +2928,7 @@ static void add_static_payload(int payload, struct ast_format *format, int rtp_c
 		if (payload < 0) {
 			ast_log(LOG_WARNING, "No dynamic RTP payload type values available "
 				"for %s - %d!\n", format ? ast_format_get_name(format) : "", rtp_code);
+			ast_rwlock_unlock(&static_RTP_PT_lock);
 			return;
 		}
 	}