From fd58c8b551d7775421686f9a5ed1e56ae15e3f90 Mon Sep 17 00:00:00 2001 From: baconpaul Date: Mon, 30 Sep 2024 09:54:05 -0400 Subject: [PATCH] Unicode paths on windows correctly handled for mp3, sf2, scm and scp Closes #1301 --- libs/sst/libgig-modified | 2 +- ...62\351\237\263\344\270\215\345\245\275.flac" | Bin 0 -> 37122 bytes ...262\351\237\263\344\270\215\345\245\275.mp3" | Bin 0 -> 16054 bytes src/sample/loaders/load_mp3.cpp | 12 ++++++++++++ src/sample/sample.cpp | 2 +- 5 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 "resources/test_samples/\350\201\262\351\237\263\344\270\215\345\245\275.flac" create mode 100644 "resources/test_samples/\350\201\262\351\237\263\344\270\215\345\245\275.mp3" diff --git a/libs/sst/libgig-modified b/libs/sst/libgig-modified index d1639be9..9ccfc876 160000 --- a/libs/sst/libgig-modified +++ b/libs/sst/libgig-modified @@ -1 +1 @@ -Subproject commit d1639be938ccfc9316fedc9a724108afcfa3c3ef +Subproject commit 9ccfc87612dd4637e142559fbd989af9b8b50cda diff --git "a/resources/test_samples/\350\201\262\351\237\263\344\270\215\345\245\275.flac" "b/resources/test_samples/\350\201\262\351\237\263\344\270\215\345\245\275.flac" new file mode 100644 index 0000000000000000000000000000000000000000..33e40bb44948eb8f97d9878f74a61fc65fccfba4 GIT binary patch literal 37122 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 F{|EBs4>SM( literal 0 HcmV?d00001 diff --git "a/resources/test_samples/\350\201\262\351\237\263\344\270\215\345\245\275.mp3" "b/resources/test_samples/\350\201\262\351\237\263\344\270\215\345\245\275.mp3" new file mode 100644 index 0000000000000000000000000000000000000000..9d368cd0e94a5b7f45b12e5a0069b8f8d249b556 GIT binary patch literal 16054 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 2) return false; diff --git a/src/sample/sample.cpp b/src/sample/sample.cpp index a05a548b..1c10c75a 100644 --- a/src/sample/sample.cpp +++ b/src/sample/sample.cpp @@ -146,7 +146,7 @@ bool Sample::loadFromSF2(const fs::path &p, sf2::File *f, int sampleIndex) auto s = sfsample; - auto fnp = fs::path{f->GetRiffFile()->GetFileName()}; + auto fnp = fs::path(fs::u8path(f->GetRiffFile()->GetFileName())); displayName = fmt::format("{} - ({} @ {})", s->Name, fnp.filename().u8string(), sampleIndex); if (frameSize == 2 && channels == 1 && sfsample->SampleType == sf2::Sample::MONO_SAMPLE)