diff --git a/CHANGELOG.md b/CHANGELOG.md index 47b7ed70..f30bc118 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -66,6 +66,8 @@ (https://codeberg.org/dnkl/foot/issues/851). * Crash when maximizing the window and `[csd].size=1` (https://codeberg.org/dnkl/foot/issues/857). +* OSC-8 URIs not getting overwritten (erased) by double-width + characters (e.g. emojis). ### Security diff --git a/terminal.c b/terminal.c index fd8ff4ae..f8612c46 100644 --- a/terminal.c +++ b/terminal.c @@ -3262,7 +3262,8 @@ term_print(struct terminal *term, wchar_t wc, int width) case OSC8_UNDERLINE_URL_MODE: break; } - } + } else if (row->extra != NULL) + grid_row_uri_range_erase(row, col, col + width - 1); /* Advance cursor the 'additional' columns while dirty:ing the cells */ for (int i = 1; i < width && col < term->cols - 1; i++) {