render: drop wlr_renderer_impl.texture_from_pixels

This commit is contained in:
Simon Ser 2021-06-29 20:39:19 +02:00 committed by Simon Zeni
parent 29c8df7e0a
commit 18adb43a44
6 changed files with 2 additions and 44 deletions

View file

@ -368,40 +368,6 @@ static struct wlr_pixman_texture *pixman_texture_create(
return texture;
}
static struct wlr_texture *pixman_texture_from_pixels(
struct wlr_renderer *wlr_renderer, uint32_t drm_format,
uint32_t stride, uint32_t width, uint32_t height, const void *data) {
struct wlr_pixman_renderer *renderer = get_renderer(wlr_renderer);
struct wlr_pixman_texture *texture =
pixman_texture_create(renderer, drm_format, width, height);
if (texture == NULL) {
return NULL;
}
// TODO: avoid this copy
texture->data = malloc(stride * height);
if (texture->data == NULL) {
wlr_log_errno(WLR_ERROR, "Allocation failed");
wl_list_remove(&texture->link);
free(texture);
return NULL;
}
memcpy(texture->data, data, stride * height);
texture->image = pixman_image_create_bits_no_clear(texture->format,
width, height, texture->data, stride);
if (!texture->image) {
wlr_log(WLR_ERROR, "Failed to create pixman image");
wl_list_remove(&texture->link);
free(texture->data);
free(texture);
return NULL;
}
return &texture->wlr_texture;
}
static struct wlr_texture *pixman_texture_from_buffer(
struct wlr_renderer *wlr_renderer, struct wlr_buffer *buffer) {
struct wlr_pixman_renderer *renderer = get_renderer(wlr_renderer);
@ -531,7 +497,6 @@ static const struct wlr_renderer_impl renderer_impl = {
.render_quad_with_matrix = pixman_render_quad_with_matrix,
.get_shm_texture_formats = pixman_get_shm_texture_formats,
.get_render_formats = pixman_get_render_formats,
.texture_from_pixels = pixman_texture_from_pixels,
.texture_from_buffer = pixman_texture_from_buffer,
.bind_buffer = pixman_bind_buffer,
.destroy = pixman_destroy,