aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/TagFile.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/TagFile.cxx b/src/TagFile.cxx
index 168be6063..0640c132e 100644
--- a/src/TagFile.cxx
+++ b/src/TagFile.cxx
@@ -87,11 +87,13 @@ tag_file_scan(Path path_fs, const tag_handler &handler, void *handler_ctx)
/* check if there's a suffix and a plugin */
- const char *suffix = path_fs.GetSuffix();
+ const auto *suffix = path_fs.GetSuffix();
if (suffix == nullptr)
return false;
- TagFileScan tfs(path_fs, suffix, handler, handler_ctx);
+ const auto suffix_utf8 = Path::FromFS(suffix).ToUTF8();
+
+ TagFileScan tfs(path_fs, suffix_utf8.c_str(), handler, handler_ctx);
return decoder_plugins_try([&](const DecoderPlugin &plugin){
return tfs.Scan(plugin);
});