From 4a31b2ea1f59c89df70eb5044466d04e8ec4af7e Mon Sep 17 00:00:00 2001 From: john Date: Wed, 18 Jan 2023 08:52:26 +0800 Subject: [PATCH] SRT: fix crash when srt_to_rtmp off (#3386) * SRT: fix crash when srt_to_rtmp off * Release v5.0.136 v6.0.17 PICK c5ccee1edf8592800c9d3fe553e0ee71571422fa Co-authored-by: chundonglinlin --- trunk/doc/CHANGELOG.md | 1 + trunk/src/app/srs_app_srt_source.cpp | 8 +++++--- trunk/src/core/srs_core_version5.hpp | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/trunk/doc/CHANGELOG.md b/trunk/doc/CHANGELOG.md index 7b42dff511..ae24d9c5ff 100644 --- a/trunk/doc/CHANGELOG.md +++ b/trunk/doc/CHANGELOG.md @@ -8,6 +8,7 @@ The changelog for SRS. ## SRS 5.0 Changelog +* v5.0, 2023-01-18, Merge [#3386](https://github.com/ossrs/srs/pull/3386): SRT: fix crash when srt_to_rtmp off. v5.0.136 (#3386) * v5.0, 2023-01-17, Merge [#3385](https://github.com/ossrs/srs/pull/3385): API: Support server/pid/service label for exporter and api. v5.0.135 (#3385) * v5.0, 2023-01-17, Merge [#3383](https://github.com/ossrs/srs/pull/3383): GB: Fix PSM parsing indicator bug. v5.0.134 (#3383) * v5.0, 2023-01-08, Merge [#3308](https://github.com/ossrs/srs/pull/3308): DVR: Improve file write performance by fwrite with cache. v5.0.133 diff --git a/trunk/src/app/srs_app_srt_source.cpp b/trunk/src/app/srs_app_srt_source.cpp index 1c549fe431..fa6a4e2653 100644 --- a/trunk/src/app/srs_app_srt_source.cpp +++ b/trunk/src/app/srs_app_srt_source.cpp @@ -768,7 +768,7 @@ srs_error_t SrsSrtSource::on_publish() return srs_error_wrap(err, "source id change"); } - if ((err = bridge_->on_publish()) != srs_success) { + if (bridge_ && (err = bridge_->on_publish()) != srs_success) { return srs_error_wrap(err, "bridge on publish"); } @@ -787,7 +787,9 @@ void SrsSrtSource::on_unpublish() can_publish_ = true; - bridge_->on_unpublish(); + if (bridge_) { + bridge_->on_unpublish(); + } srs_freep(bridge_); } @@ -802,7 +804,7 @@ srs_error_t SrsSrtSource::on_packet(SrsSrtPacket* packet) } } - if ((err = bridge_->on_packet(packet)) != srs_success) { + if (bridge_ && (err = bridge_->on_packet(packet)) != srs_success) { return srs_error_wrap(err, "bridge consume message"); } diff --git a/trunk/src/core/srs_core_version5.hpp b/trunk/src/core/srs_core_version5.hpp index 17b87f69bb..9bb8da5c95 100644 --- a/trunk/src/core/srs_core_version5.hpp +++ b/trunk/src/core/srs_core_version5.hpp @@ -9,6 +9,6 @@ #define VERSION_MAJOR 5 #define VERSION_MINOR 0 -#define VERSION_REVISION 135 +#define VERSION_REVISION 136 #endif