diff options
Diffstat (limited to 'subprojects/packagefiles/libplacebo')
| -rw-r--r-- | subprojects/packagefiles/libplacebo/cache_ref_rect.diff | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/subprojects/packagefiles/libplacebo/cache_ref_rect.diff b/subprojects/packagefiles/libplacebo/cache_ref_rect.diff new file mode 100644 index 0000000..647d637 --- /dev/null +++ b/subprojects/packagefiles/libplacebo/cache_ref_rect.diff @@ -0,0 +1,28 @@ +diff --git a/src/renderer.c b/src/renderer.c +index 7622523..54869b9 100644 +--- a/src/renderer.c ++++ b/src/renderer.c +@@ -31,6 +31,7 @@ struct cached_frame { + struct pl_color_space color; + struct pl_icc_profile profile; + pl_rect2df crop; ++ pl_rect2df ref_rect; + pl_tex tex; + int comps; + bool evict; // for garbage collection +@@ -3473,6 +3474,7 @@ retry: + can_reuse = f->tex->params.w == out_w && + f->tex->params.h == out_h && + pl_rect2d_eq(f->crop, img->crop) && ++ pl_rect2d_eq(f->ref_rect, pass.ref_rect) && + f->params_hash == par_info.hash && + pl_color_space_equal(&f->color, &target->color) && + pl_icc_profile_equal(&f->profile, &target->profile); +@@ -3568,6 +3570,7 @@ retry: + + f->params_hash = par_info.hash; + f->crop = img->crop; ++ f->ref_rect = pass.ref_rect; + f->color = inter_pass.img.color; + f->comps = inter_pass.img.comps; + f->profile = target->profile; |