diff --git a/CHANGELOG.md b/CHANGELOG.md index 04b0fe7f..7c7a6b1f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,7 @@ * Crash when compositor send `text-input-v3::enter` events without first having sent a `keyboard::enter` event (https://codeberg.org/dnkl/foot/issues/411). +* Deadlock when rendering sixel images. ### Security diff --git a/render.c b/render.c index dd8070e0..d8e1a009 100644 --- a/render.c +++ b/render.c @@ -2090,6 +2090,8 @@ grid_render(struct terminal *term) cursor.row &= term->grid->num_rows - 1; } + render_sixel_images(term, buf->pix[0], &cursor); + if (term->render.workers.count > 0) { mtx_lock(&term->render.workers.lock); term->render.workers.buf = buf; @@ -2099,8 +2101,6 @@ grid_render(struct terminal *term) xassert(tll_length(term->render.workers.queue) == 0); } - render_sixel_images(term, buf->pix[0], &cursor); - int first_dirty_row = -1; for (int r = 0; r < term->rows; r++) { struct row *row = grid_row_in_view(term->grid, r);