aboutsummaryrefslogtreecommitdiff
path: root/render
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2021-03-31 22:07:54 +0200
committerSimon Zeni <simon@bl4ckb0ne.ca>2021-10-01 09:21:50 -0600
commit6d281d96cb93b8de972039d5cb00bfce49d9a58c (patch)
treeecef6b677bb3cfaa0bb36c47110a05a85064d7ef /render
parent780052d4da0c93f9210dd87d2100b116af7ff308 (diff)
render/drm_format_set: remove special LINEAR case
This was used to make the intersection of INVALID and LINEAR result in LINEAR. We can now just require LINEAR to be in both lists.
Diffstat (limited to 'render')
-rw-r--r--render/drm_format_set.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/render/drm_format_set.c b/render/drm_format_set.c
index 8dc48675..36cdcd5d 100644
--- a/render/drm_format_set.c
+++ b/render/drm_format_set.c
@@ -144,18 +144,6 @@ struct wlr_drm_format *wlr_drm_format_intersect(
const struct wlr_drm_format *a, const struct wlr_drm_format *b) {
assert(a->format == b->format);
- // Special case: if a format only supports LINEAR and the other supports
- // implicit modifiers, force LINEAR. This will force the allocator to
- // create a buffer with a linear layout instead of an implicit modifier.
- if (a->len == 1 && a->modifiers[0] == DRM_FORMAT_MOD_LINEAR &&
- wlr_drm_format_has(b, DRM_FORMAT_MOD_INVALID)) {
- return wlr_drm_format_dup(a);
- }
- if (b->len == 1 && b->modifiers[0] == DRM_FORMAT_MOD_LINEAR &&
- wlr_drm_format_has(a, DRM_FORMAT_MOD_INVALID)) {
- return wlr_drm_format_dup(b);
- }
-
size_t format_cap = a->len < b->len ? a->len : b->len;
size_t format_size = sizeof(struct wlr_drm_format) +
format_cap * sizeof(a->modifiers[0]);