winlin

merge from feilong, fix hls msg memory leak bug.

@@ -1239,7 +1239,7 @@ int SrsSource::on_audio(SrsCommonMessage* __audio) @@ -1239,7 +1239,7 @@ int SrsSource::on_audio(SrsCommonMessage* __audio)
1239 srs_verbose("initialize shared ptr audio success."); 1239 srs_verbose("initialize shared ptr audio success.");
1240 1240
1241 #ifdef SRS_AUTO_HLS 1241 #ifdef SRS_AUTO_HLS
1242 - if ((ret = hls->on_audio(msg.copy())) != ERROR_SUCCESS) { 1242 + if ((ret = hls->on_audio(&msg)) != ERROR_SUCCESS) {
1243 // apply the error strategy for hls. 1243 // apply the error strategy for hls.
1244 // @see https://github.com/winlinvip/simple-rtmp-server/issues/264 1244 // @see https://github.com/winlinvip/simple-rtmp-server/issues/264
1245 std::string hls_error_strategy = _srs_config->get_hls_on_error(_req->vhost); 1245 std::string hls_error_strategy = _srs_config->get_hls_on_error(_req->vhost);
@@ -1366,7 +1366,7 @@ int SrsSource::on_video(SrsCommonMessage* __video) @@ -1366,7 +1366,7 @@ int SrsSource::on_video(SrsCommonMessage* __video)
1366 srs_verbose("initialize shared ptr video success."); 1366 srs_verbose("initialize shared ptr video success.");
1367 1367
1368 #ifdef SRS_AUTO_HLS 1368 #ifdef SRS_AUTO_HLS
1369 - if ((ret = hls->on_video(msg.copy())) != ERROR_SUCCESS) { 1369 + if ((ret = hls->on_video(&msg)) != ERROR_SUCCESS) {
1370 // apply the error strategy for hls. 1370 // apply the error strategy for hls.
1371 // @see https://github.com/winlinvip/simple-rtmp-server/issues/264 1371 // @see https://github.com/winlinvip/simple-rtmp-server/issues/264
1372 std::string hls_error_strategy = _srs_config->get_hls_on_error(_req->vhost); 1372 std::string hls_error_strategy = _srs_config->get_hls_on_error(_req->vhost);