Mercurial > vim
annotate src/testdir/test_job_fails.vim @ 33774:f2dd85a2bfc0 v9.0.2107
patch 9.0.2107: [security]: FPE in adjust_plines_for_skipcol
Commit: https://github.com/vim/vim/commit/cb0b99f0672d8446585d26e998343dceca17d1ce
Author: Christian Brabandt <cb@256bit.org>
Date: Tue Nov 14 20:05:59 2023 +0100
patch 9.0.2107: [security]: FPE in adjust_plines_for_skipcol
Problem: [security]: FPE in adjust_plines_for_skipcol
Solution: don't divide by zero, return zero
Prevent a floating point exception when calculating w_skipcol (which can
happen with a small window when the number option is set and cpo+=n).
Add a test to verify
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 16 Nov 2023 22:15:08 +0100 |
parents | 08940efa6b4e |
children |
rev | line source |
---|---|
9764
e0b783389bea
commit https://github.com/vim/vim/commit/46c4d4ac66aa2b129f4dcec9debfda606f72d4b3
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " This test is in a separate file, because it usually causes reports for memory |
e0b783389bea
commit https://github.com/vim/vim/commit/46c4d4ac66aa2b129f4dcec9debfda606f72d4b3
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 " leaks under valgrind. That is because when fork/exec fails memory is not |
19724
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
13798
diff
changeset
|
3 " freed. Since the process exits right away it's not a real leak. |
9764
e0b783389bea
commit https://github.com/vim/vim/commit/46c4d4ac66aa2b129f4dcec9debfda606f72d4b3
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
4 |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
5 source check.vim |
9764
e0b783389bea
commit https://github.com/vim/vim/commit/46c4d4ac66aa2b129f4dcec9debfda606f72d4b3
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 |
e0b783389bea
commit https://github.com/vim/vim/commit/46c4d4ac66aa2b129f4dcec9debfda606f72d4b3
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 func Test_job_start_fails() |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
8 CheckFeature job |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
9 let job = job_start('axdfxsdf') |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
10 if has('unix') |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
11 call WaitForAssert({-> assert_equal("dead", job_status(job))}) |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
12 else |
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
13 call WaitForAssert({-> assert_equal("fail", job_status(job))}) |
9764
e0b783389bea
commit https://github.com/vim/vim/commit/46c4d4ac66aa2b129f4dcec9debfda606f72d4b3
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 endif |
e0b783389bea
commit https://github.com/vim/vim/commit/46c4d4ac66aa2b129f4dcec9debfda606f72d4b3
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 endfunc |
19724
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
13798
diff
changeset
|
16 |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
13798
diff
changeset
|
17 " vim: shiftwidth=2 sts=2 expandtab |