Merge pull request #17321 from hrydgard/fix-save-textures-content-uri

Fix an oversight when saving replacement textures on scoped storage
This commit is contained in:
Henrik Rydgård
2023-04-22 00:14:22 +02:00
committed by GitHub
2 changed files with 6 additions and 1 deletions
+5
View File
@@ -131,6 +131,11 @@ Path Path::WithReplacedExtension(const std::string &oldExtension, const std::str
}
Path Path::WithReplacedExtension(const std::string &newExtension) const {
if (type_ == PathType::CONTENT_URI) {
AndroidContentURI uri(path_);
return Path(uri.WithReplacedExtension(newExtension).ToString());
}
_dbg_assert_(!newExtension.empty() && newExtension[0] == '.');
if (path_.empty()) {
return Path(*this);
+1 -1
View File
@@ -561,7 +561,7 @@ ReplacedTexture *TextureReplacer::FindReplacement(u64 cachekey, u32 hash, int w,
static bool WriteTextureToPNG(png_imagep image, const Path &filename, int convert_to_8bit, const void *buffer, png_int_32 row_stride, const void *colormap) {
FILE *fp = File::OpenCFile(filename, "wb");
if (!fp) {
ERROR_LOG(IO, "Unable to open texture file for writing.");
ERROR_LOG(IO, "Unable to open texture file '%s' for writing.", filename.c_str());
return false;
}