From 526c778162ab008c34c5fc319c18be6d3b54466e Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sat, 18 Jan 2020 19:50:02 +0100 Subject: [PATCH] tag/Id3Scan: remove exception handler, let caller catch There's just one caller, i.e. ScanGenericTags(), which is documented to throw exceptions. --- src/tag/Id3Scan.cxx | 16 +++------------- src/tag/Id3Scan.hxx | 5 ++++- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/src/tag/Id3Scan.cxx b/src/tag/Id3Scan.cxx index c85de6b70..2ae21dc10 100644 --- a/src/tag/Id3Scan.cxx +++ b/src/tag/Id3Scan.cxx @@ -28,12 +28,9 @@ #include "util/ScopeExit.hxx" #include "util/StringStrip.hxx" #include "util/StringView.hxx" -#include "Log.hxx" #include -#include - #include #include @@ -381,18 +378,11 @@ tag_id3_import(const struct id3_tag *tag) noexcept } bool -tag_id3_scan(InputStream &is, TagHandler &handler) noexcept +tag_id3_scan(InputStream &is, TagHandler &handler) { - UniqueId3Tag tag; - - try { - tag = tag_id3_load(is); - if (!tag) - return false; - } catch (...) { - LogError(std::current_exception()); + auto tag = tag_id3_load(is); + if (!tag) return false; - } scan_id3_tag(tag.get(), handler); return true; diff --git a/src/tag/Id3Scan.hxx b/src/tag/Id3Scan.hxx index b5ba43863..a7bb75682 100644 --- a/src/tag/Id3Scan.hxx +++ b/src/tag/Id3Scan.hxx @@ -25,8 +25,11 @@ class TagHandler; struct Tag; struct id3_tag; +/** + * Throws on I/O error. + */ bool -tag_id3_scan(InputStream &is, TagHandler &handler) noexcept; +tag_id3_scan(InputStream &is, TagHandler &handler); Tag tag_id3_import(const struct id3_tag *) noexcept;