diff --git a/svr-tcpfwd.c b/svr-tcpfwd.c
index 1c8d3539ac388d5de428131338a83807343398df..fdc762b7b60578616b5afea1bd50f72403ceaa13 100644
--- a/svr-tcpfwd.c
+++ b/svr-tcpfwd.c
@@ -199,7 +199,7 @@ static int svr_remotetcpreq() {
 	}
 	else
 	{
-		tcpinfo->listenaddr = request_addr;
+		tcpinfo->listenaddr = m_strdup(request_addr);
 	}
 
 	ret = listen_tcpfwd(tcpinfo);