Mercurial > vim
comparison src/gui_gtk_x11.c @ 26028:be2d004247e1 v8.2.3548
patch 8.2.3548: GTK GUI crashen when reading from stdin
Commit: https://github.com/vim/vim/commit/d68a0044858d00de6100def1e389a3a9c1cdbcdc
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Oct 20 23:08:11 2021 +0100
patch 8.2.3548: GTK GUI crashen when reading from stdin
Problem: GTK GUI crashen when reading from stdin.
Solution: Do not overwrite the NUL after the string. (closes https://github.com/vim/vim/issues/9028)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 21 Oct 2021 00:15:03 +0200 |
parents | 9b2be5556740 |
children | 5a1850512676 |
comparison
equal
deleted
inserted
replaced
26027:988f7d88aacb | 26028:be2d004247e1 |
---|---|
5742 { | 5742 { |
5743 slen++; // ascii | 5743 slen++; // ascii |
5744 } | 5744 } |
5745 } | 5745 } |
5746 | 5746 |
5747 // temporarily zero terminate substring, print, restore char, wrap | 5747 if (slen < len) |
5748 backup_ch = *(cs + slen); | 5748 { |
5749 *(cs + slen) = 0; | 5749 // temporarily zero terminate substring, print, restore char, wrap |
5750 backup_ch = *(cs + slen); | |
5751 *(cs + slen) = NUL; | |
5752 } | |
5750 len_sum += gui_gtk2_draw_string_ext(row, col + len_sum, | 5753 len_sum += gui_gtk2_draw_string_ext(row, col + len_sum, |
5751 cs, slen, flags, needs_pango); | 5754 cs, slen, flags, needs_pango); |
5752 *(cs + slen) = backup_ch; | 5755 if (slen < len) |
5756 *(cs + slen) = backup_ch; | |
5753 cs += slen; | 5757 cs += slen; |
5754 byte_sum += slen; | 5758 byte_sum += slen; |
5755 needs_pango = should_need_pango; | 5759 needs_pango = should_need_pango; |
5756 } | 5760 } |
5757 vim_free(conv_buf); | 5761 vim_free(conv_buf); |