diff --git a/trunk/src/app/srs_app_source.cpp b/trunk/src/app/srs_app_source.cpp index 158acd16b5..3e6d487c0d 100755 --- a/trunk/src/app/srs_app_source.cpp +++ b/trunk/src/app/srs_app_source.cpp @@ -1158,6 +1158,10 @@ int SrsSource::on_reload_vhost_forward(string vhost) return ret; } + if (_can_publish) { + return ret; + } + // forwarders destroy_forwarders(); if ((ret = create_forwarders()) != ERROR_SUCCESS) { @@ -1178,6 +1182,10 @@ int SrsSource::on_reload_vhost_hls(string vhost) return ret; } + if (_can_publish) { + return ret; + } + #ifdef SRS_AUTO_HLS hls->on_unpublish(); if ((ret = hls->on_publish(_req, true)) != ERROR_SUCCESS) { @@ -1198,6 +1206,10 @@ int SrsSource::on_reload_vhost_hds(string vhost) return ret; } + if (_can_publish) { + return ret; + } + #ifdef SRS_AUTO_HDS hds->on_unpublish(); if ((ret = hds->on_publish(_req)) != ERROR_SUCCESS) { @@ -1218,6 +1230,10 @@ int SrsSource::on_reload_vhost_dvr(string vhost) return ret; } + if (_can_publish) { + return ret; + } + #ifdef SRS_AUTO_DVR // cleanup dvr dvr->on_unpublish(); @@ -1247,6 +1263,10 @@ int SrsSource::on_reload_vhost_transcode(string vhost) return ret; } + if (_can_publish) { + return ret; + } + #ifdef SRS_AUTO_TRANSCODE encoder->on_unpublish(); if ((ret = encoder->on_publish(_req)) != ERROR_SUCCESS) {