summaryrefslogtreecommitdiffstats
path: root/src/video_core/texture_cache/image_base.cpp
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2023-05-23 07:34:46 +0200
committerFernando Sahmkow <fsahmkow27@gmail.com>2023-05-24 09:53:42 +0200
commit72c1ee1bf96be45e2794f26ad83dbd13e892c22d (patch)
treedd7fbc88c130471ae9f77049fa9782b33d929d22 /src/video_core/texture_cache/image_base.cpp
parentMerge pull request #10386 from german77/high (diff)
downloadyuzu-72c1ee1bf96be45e2794f26ad83dbd13e892c22d.tar
yuzu-72c1ee1bf96be45e2794f26ad83dbd13e892c22d.tar.gz
yuzu-72c1ee1bf96be45e2794f26ad83dbd13e892c22d.tar.bz2
yuzu-72c1ee1bf96be45e2794f26ad83dbd13e892c22d.tar.lz
yuzu-72c1ee1bf96be45e2794f26ad83dbd13e892c22d.tar.xz
yuzu-72c1ee1bf96be45e2794f26ad83dbd13e892c22d.tar.zst
yuzu-72c1ee1bf96be45e2794f26ad83dbd13e892c22d.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/texture_cache/image_base.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/video_core/texture_cache/image_base.cpp b/src/video_core/texture_cache/image_base.cpp
index 91512022f..d79594ce5 100644
--- a/src/video_core/texture_cache/image_base.cpp
+++ b/src/video_core/texture_cache/image_base.cpp
@@ -155,7 +155,7 @@ void ImageBase::CheckAliasState() {
flags &= ~ImageFlagBits::Alias;
}
-void AddImageAlias(ImageBase& lhs, ImageBase& rhs, ImageId lhs_id, ImageId rhs_id) {
+bool AddImageAlias(ImageBase& lhs, ImageBase& rhs, ImageId lhs_id, ImageId rhs_id) {
static constexpr auto OPTIONS = RelaxedOptions::Size | RelaxedOptions::Format;
ASSERT(lhs.info.type == rhs.info.type);
std::optional<SubresourceBase> base;
@@ -169,7 +169,7 @@ void AddImageAlias(ImageBase& lhs, ImageBase& rhs, ImageId lhs_id, ImageId rhs_i
}
if (!base) {
LOG_ERROR(HW_GPU, "Image alias should have been flipped");
- return;
+ return false;
}
const PixelFormat lhs_format = lhs.info.format;
const PixelFormat rhs_format = rhs.info.format;
@@ -248,12 +248,13 @@ void AddImageAlias(ImageBase& lhs, ImageBase& rhs, ImageId lhs_id, ImageId rhs_i
}
ASSERT(lhs_alias.copies.empty() == rhs_alias.copies.empty());
if (lhs_alias.copies.empty()) {
- return;
+ return false;
}
lhs.aliased_images.push_back(std::move(lhs_alias));
rhs.aliased_images.push_back(std::move(rhs_alias));
lhs.flags &= ~ImageFlagBits::IsRescalable;
rhs.flags &= ~ImageFlagBits::IsRescalable;
+ return true;
}
} // namespace VideoCommon