forked from extern/nix-config
overlays: Add kitty duplicate lines patch
Patches the issue described below: https://github.com/kovidgoyal/kitty/issues/6306
This commit is contained in:
parent
8251867144
commit
ad377d14fa
@ -2,6 +2,7 @@
|
|||||||
imports = [
|
imports = [
|
||||||
./alejandra
|
./alejandra
|
||||||
./joshuto
|
./joshuto
|
||||||
|
./kitty
|
||||||
./rofi
|
./rofi
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
9
overlays/kitty/default.nix
Normal file
9
overlays/kitty/default.nix
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(final: prev: {
|
||||||
|
kitty = prev.kitty.overrideAttrs (old: {
|
||||||
|
patches = (old.patches or []) ++ [./fix-duplicate-lines.patch];
|
||||||
|
});
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}
|
40
overlays/kitty/fix-duplicate-lines.patch
Normal file
40
overlays/kitty/fix-duplicate-lines.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From 7f6f1f9a5dac301b9f977e0d1a53c487c5cad9aa Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kovid Goyal <kovid@kovidgoyal.net>
|
||||||
|
Date: Sun, 28 May 2023 06:24:49 +0530
|
||||||
|
Subject: [PATCH] Fix a regression in 0.28.0 that caused a buffer overflow when
|
||||||
|
clearing the screen
|
||||||
|
|
||||||
|
Fixes #6306
|
||||||
|
Fixes #6308
|
||||||
|
---
|
||||||
|
docs/changelog.rst | 2 ++
|
||||||
|
kitty/screen.c | 3 ++-
|
||||||
|
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/docs/changelog.rst b/docs/changelog.rst
|
||||||
|
index b8c9a049e8..12f9806fa2 100644
|
||||||
|
--- a/docs/changelog.rst
|
||||||
|
+++ b/docs/changelog.rst
|
||||||
|
@@ -71,6 +71,8 @@ Detailed list of changes
|
||||||
|
|
||||||
|
- Graphics: Move images up along with text when the window is shrunk vertically (:iss:`6278`)
|
||||||
|
|
||||||
|
+- Fix a regression in 0.28.0 that caused a buffer overflow when clearing the screen (:iss:`6306`, :pull:`6308`)
|
||||||
|
+
|
||||||
|
0.28.1 [2023-04-21]
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
diff --git a/kitty/screen.c b/kitty/screen.c
|
||||||
|
index ffa0e9f94d..a73e4084e3 100644
|
||||||
|
--- a/kitty/screen.c
|
||||||
|
+++ b/kitty/screen.c
|
||||||
|
@@ -894,7 +894,8 @@ cursor_within_margins(Screen *self) {
|
||||||
|
static void
|
||||||
|
screen_dirty_line_graphics(Screen *self, unsigned int top, unsigned int bottom) {
|
||||||
|
bool need_to_remove = false;
|
||||||
|
- for (unsigned int y = top; y <= bottom; y++) {
|
||||||
|
+ bottom = MIN(bottom+1, self->lines);
|
||||||
|
+ for (unsigned int y = top; y < bottom; y++) {
|
||||||
|
if (self->linebuf->line_attrs[y].has_image_placeholders) {
|
||||||
|
need_to_remove = true;
|
||||||
|
linebuf_mark_line_dirty(self->linebuf, y);
|
Loading…
Reference in New Issue
Block a user