From 90c3c3f9b3e8e36706b9769e574aa316e8bbb351 Mon Sep 17 00:00:00 2001 From: Cosmin Stejerean Date: Wed, 27 Mar 2024 15:03:10 -0400 Subject: [PATCH] fix: BaseURL missing when MPD base path is empty (#1380) The check for `!mpd_dir.empty()` is not needed because MakePathRelative handles the case where the parent path is empty. As a result of this check the base url, segment url, or segment template URLs were all missing in cases where the mpd output was in the current working directory. Fixes #1378 --- packager/mpd/base/mpd_builder.cc | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/packager/mpd/base/mpd_builder.cc b/packager/mpd/base/mpd_builder.cc index 105d8efee1..0ebe40dc0f 100644 --- a/packager/mpd/base/mpd_builder.cc +++ b/packager/mpd/base/mpd_builder.cc @@ -417,19 +417,17 @@ void MpdBuilder::MakePathsRelativeToMpd(const std::string& mpd_path, if (!mpd_file_path.empty()) { const std::filesystem::path mpd_dir(mpd_file_path.parent_path()); - if (!mpd_dir.empty()) { - if (media_info->has_media_file_name()) { - media_info->set_media_file_url( - MakePathRelative(media_info->media_file_name(), mpd_dir)); - } - if (media_info->has_init_segment_name()) { - media_info->set_init_segment_url( - MakePathRelative(media_info->init_segment_name(), mpd_dir)); - } - if (media_info->has_segment_template()) { - media_info->set_segment_template_url( - MakePathRelative(media_info->segment_template(), mpd_dir)); - } + if (media_info->has_media_file_name()) { + media_info->set_media_file_url( + MakePathRelative(media_info->media_file_name(), mpd_dir)); + } + if (media_info->has_init_segment_name()) { + media_info->set_init_segment_url( + MakePathRelative(media_info->init_segment_name(), mpd_dir)); + } + if (media_info->has_segment_template()) { + media_info->set_segment_template_url( + MakePathRelative(media_info->segment_template(), mpd_dir)); } } }