<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/test/old/testdir, branch mix_20240309</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>vim-patch:8.2.3915: illegal memory access when completing with invalid bytes (#27491)</title>
<updated>2024-03-09T11:21:31+00:00</updated>
<author>
<name>Raphael</name>
<email>glephunter@gmail.com</email>
</author>
<published>2024-03-09T11:21:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=0e284939143ae5bd55f78ece388346811af842ea'/>
<id>0e284939143ae5bd55f78ece388346811af842ea</id>
<content type='text'>
Problem:    illegal memory access when completing with invalid bytes.
Solution:   Avoid going over the end of the completion text.

vim/vim@4b28ba3

Co-authored-by: Bram Moolenaar &lt;Bram@vim.org&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:    illegal memory access when completing with invalid bytes.
Solution:   Avoid going over the end of the completion text.

vim/vim@4b28ba3

Co-authored-by: Bram Moolenaar &lt;Bram@vim.org&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>test(old): change back to using termopen() on Windows (#27772)</title>
<updated>2024-03-08T04:21:11+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-03-08T04:21:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=25124d3607b8f645d65e734c72cfc1da7498b34e'/>
<id>25124d3607b8f645d65e734c72cfc1da7498b34e</id>
<content type='text'>
It no longer hangs on Windows CI.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It no longer hangs on Windows CI.</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0158: 'shortmess' "F" flag doesn't work properly with 'autoread'</title>
<updated>2024-03-07T23:04:39+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-03-07T22:53:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=c38764182a966f12b91bdc9b9ff6228621238483'/>
<id>c38764182a966f12b91bdc9b9ff6228621238483</id>
<content type='text'>
Problem:  'shortmess' "F" flag doesn't work properly with 'autoread'
          (after 9.1.0154)
Solution: Hide the file info message instead of the warning dialog
          (zeertzjq)

closes: vim/vim#14159
closes: vim/vim#14158

https://github.com/vim/vim/commit/8a01744c563f615ae7f6b3ab7f5208214a45a8e2
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  'shortmess' "F" flag doesn't work properly with 'autoread'
          (after 9.1.0154)
Solution: Hide the file info message instead of the warning dialog
          (zeertzjq)

closes: vim/vim#14159
closes: vim/vim#14158

https://github.com/vim/vim/commit/8a01744c563f615ae7f6b3ab7f5208214a45a8e2
</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0154: shm=F not respected when reloading buffer with 'autoread'</title>
<updated>2024-03-07T22:53:37+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-03-07T22:52:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d741e5d1629948876cf8bdcacf6c8bc8a4924f94'/>
<id>d741e5d1629948876cf8bdcacf6c8bc8a4924f94</id>
<content type='text'>
Problem:  shm=F not respected when reloading buffer with 'autoread'
Solution: Check SHM_FILEINFO in buf_check_timestamp()
          (Shougo Matsushita)

closes: vim/vim#14144

https://github.com/vim/vim/commit/9db39b0ec90600bb41faec3a12b934b17c298b1f

Co-authored-by: Shougo Matsushita &lt;Shougo.Matsu@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  shm=F not respected when reloading buffer with 'autoread'
Solution: Check SHM_FILEINFO in buf_check_timestamp()
          (Shougo Matsushita)

closes: vim/vim#14144

https://github.com/vim/vim/commit/9db39b0ec90600bb41faec3a12b934b17c298b1f

Co-authored-by: Shougo Matsushita &lt;Shougo.Matsu@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0157: Duplicate assignment in f_getregion() (#27766)</title>
<updated>2024-03-07T22:44:57+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-03-07T22:44:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=5f3579e6ea12659d48e92b2126f83777908c28fc'/>
<id>5f3579e6ea12659d48e92b2126f83777908c28fc</id>
<content type='text'>
Problem:  Duplicate assignment in f_getregion().
Solution: Remove the duplicate assignment.  Also improve getregion()
          docs wording and fix an unrelated typo (zeertzjq)

closes: vim/vim#14154

https://github.com/vim/vim/commit/0df8f93bdaea77a1afb9f4eca94fe67ec73e6df2</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  Duplicate assignment in f_getregion().
Solution: Remove the duplicate assignment.  Also improve getregion()
          docs wording and fix an unrelated typo (zeertzjq)

closes: vim/vim#14154

https://github.com/vim/vim/commit/0df8f93bdaea77a1afb9f4eca94fe67ec73e6df2</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0155: can only get getregion() from current buffer (#27757)</title>
<updated>2024-03-06T22:43:08+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-03-06T22:43:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=6525832a8c4d44a8ebabba02a5ea1ce09b389a4f'/>
<id>6525832a8c4d44a8ebabba02a5ea1ce09b389a4f</id>
<content type='text'>
Problem:  can only call getregion() for current buffer
Solution: Allow to retrieve selections from different buffers
          (Shougo Matsushita)

closes: vim/vim#14131

https://github.com/vim/vim/commit/84bf6e658da51126bdd2e50af1f40cabd149343f

Co-authored-by: Shougo Matsushita &lt;Shougo.Matsu@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  can only call getregion() for current buffer
Solution: Allow to retrieve selections from different buffers
          (Shougo Matsushita)

closes: vim/vim#14131

https://github.com/vim/vim/commit/84bf6e658da51126bdd2e50af1f40cabd149343f

Co-authored-by: Shougo Matsushita &lt;Shougo.Matsu@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0146: v:echospace wrong with invalid value of 'showcmdloc' (#27697)</title>
<updated>2024-03-01T22:48:11+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-03-01T22:48:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=62d04f21d9eb16f8fca2ed5038c7af4fa3f8c63a'/>
<id>62d04f21d9eb16f8fca2ed5038c7af4fa3f8c63a</id>
<content type='text'>
Problem:  v:echospace wrong after setting invalid value to 'showcmdloc'.
Solution: Only call comp_col() if value is valid.
          (zeertzjq)

closes: vim/vim#14119

https://github.com/vim/vim/commit/c27fcf4857228bc650943246ffbba444a085b3e7</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  v:echospace wrong after setting invalid value to 'showcmdloc'.
Solution: Only call comp_col() if value is valid.
          (zeertzjq)

closes: vim/vim#14119

https://github.com/vim/vim/commit/c27fcf4857228bc650943246ffbba444a085b3e7</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0145: v:echospace not correct when 'showcmdloc' != last (#27682)</title>
<updated>2024-02-29T22:13:38+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-02-29T22:13:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=5d4e1693cb415e8b76749e833e28f00f14630b87'/>
<id>5d4e1693cb415e8b76749e833e28f00f14630b87</id>
<content type='text'>
Problem:  the amount of available space (v:echospace) on the command
          line is not correct when showcmdloc is drawn into the
          statusline or tabline.
Solution: only add SHOWCMD_COLS to the shown command column when
          'showcmdloc' is set to last (Sam-programs)

closes: vim/vim#14108

https://github.com/vim/vim/commit/062141b1a70cf5364e6983ec901282e0111745c1

Co-authored-by: Sam-programs &lt;130783534+Sam-programs@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  the amount of available space (v:echospace) on the command
          line is not correct when showcmdloc is drawn into the
          statusline or tabline.
Solution: only add SHOWCMD_COLS to the shown command column when
          'showcmdloc' is set to last (Sam-programs)

closes: vim/vim#14108

https://github.com/vim/vim/commit/062141b1a70cf5364e6983ec901282e0111745c1

Co-authored-by: Sam-programs &lt;130783534+Sam-programs@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0144: getregion() needs more tests (#27681)</title>
<updated>2024-02-29T22:09:20+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-02-29T22:09:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=57e5b9f4eadfda3dbcf94d8ea7e37ac61d157d9d'/>
<id>57e5b9f4eadfda3dbcf94d8ea7e37ac61d157d9d</id>
<content type='text'>
Problem:  getregion() needs more tests
Solution: Run the getregion() test in both the legacy and Vim9 contexts
          (Yegappan Lakshmanan)

closes: vim/vim#14114

https://github.com/vim/vim/commit/4d55c54e307c27600c644c6631ff673ed89dd53a

Co-authored-by: Yegappan Lakshmanan &lt;yegappan@yahoo.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  getregion() needs more tests
Solution: Run the getregion() test in both the legacy and Vim9 contexts
          (Yegappan Lakshmanan)

closes: vim/vim#14114

https://github.com/vim/vim/commit/4d55c54e307c27600c644c6631ff673ed89dd53a

Co-authored-by: Yegappan Lakshmanan &lt;yegappan@yahoo.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:9.1.0143: [security]: autocmd causes use-after-free in set_curbuf() (#27664)</title>
<updated>2024-02-29T00:33:02+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2024-02-29T00:33:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=0eaae1bc057a2a4672d3e485498137a0d2282ad3'/>
<id>0eaae1bc057a2a4672d3e485498137a0d2282ad3</id>
<content type='text'>
Problem:  [security]: autocmd cause use-after-free in set_curbuf()
          (kawarimidoll)
Solution: check side-effect of BufLeave autocommand, when the number
          of windows changed, close windows containing buffers that will
          be wiped, if curbuf changed unexpectedly make sure b_nwindows
          is decremented otherwise it cannot be wiped

set_curbuf() already makes some efforts to ensure the BufLeave
autocommands do not cause issues.  However there are still 2 issues
that are not taken care of:

1) If a BufLeave autocommand opens a new window containing the same
buffer as that is going got be closed in close_buffer() a bit later,
we suddenly have another window open, containing a free'd buffer.  So we
must check if the number of windows changed and if it does (and the
current buffer is going to be wiped (according to the 'bufhidden'
setting), let's immediately close all windows containing the current
buffer using close_windows()

2) If a BufLeave autocommand changes our current buffer (displays it in
the current window), buf-&gt;b_nwindow will be incremented. As part of
set_curbuf() we will however enter another buffer soon, which means, the
newly created curbuf will have b_nwindows still have set, even so the
buffer is no longer displayed in a window. This causes later problems,
because it will no longer be possible to wipe such a buffer. So just
before entering the final buffer, check if the curbuf changed when
calling the BufLeave autocommand and if it does (and curbuf is still
valid), decrement curbuf-&gt;b_nwindows.

Both issues can be verified using the provided test (however the second
issue only because such an impacted buffer won't be wiped, causing
futher issues in later tests).

fixes: vim/vim#13839
closes: vim/vim#14104

https://github.com/vim/vim/commit/55f8bba73be5f9c3a5a4d0d6c5f56e65f2c7d3fc

Co-authored-by: Christian Brabandt &lt;cb@256bit.org&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  [security]: autocmd cause use-after-free in set_curbuf()
          (kawarimidoll)
Solution: check side-effect of BufLeave autocommand, when the number
          of windows changed, close windows containing buffers that will
          be wiped, if curbuf changed unexpectedly make sure b_nwindows
          is decremented otherwise it cannot be wiped

set_curbuf() already makes some efforts to ensure the BufLeave
autocommands do not cause issues.  However there are still 2 issues
that are not taken care of:

1) If a BufLeave autocommand opens a new window containing the same
buffer as that is going got be closed in close_buffer() a bit later,
we suddenly have another window open, containing a free'd buffer.  So we
must check if the number of windows changed and if it does (and the
current buffer is going to be wiped (according to the 'bufhidden'
setting), let's immediately close all windows containing the current
buffer using close_windows()

2) If a BufLeave autocommand changes our current buffer (displays it in
the current window), buf-&gt;b_nwindow will be incremented. As part of
set_curbuf() we will however enter another buffer soon, which means, the
newly created curbuf will have b_nwindows still have set, even so the
buffer is no longer displayed in a window. This causes later problems,
because it will no longer be possible to wipe such a buffer. So just
before entering the final buffer, check if the curbuf changed when
calling the BufLeave autocommand and if it does (and curbuf is still
valid), decrement curbuf-&gt;b_nwindows.

Both issues can be verified using the provided test (however the second
issue only because such an impacted buffer won't be wiped, causing
futher issues in later tests).

fixes: vim/vim#13839
closes: vim/vim#14104

https://github.com/vim/vim/commit/55f8bba73be5f9c3a5a4d0d6c5f56e65f2c7d3fc

Co-authored-by: Christian Brabandt &lt;cb@256bit.org&gt;</pre>
</div>
</content>
</entry>
</feed>
