skywind3000 wrote:
> 在 2016年8月4日星期四 UTC+8上午3:05:11,Bram Moolenaar写道:
> > Christian Brabandt wrote:
> >
> > > On Mi, 03 Aug 2016, Christian Brabandt wrote:
> > >
> > > > On Mi, 03 Aug 2016, Christian Brabandt wrote:
> > > > > On Mi, 03 Aug 2016, Bram Moolenaar wrote:
> > > > > > Christian Brabandt wrote:
> > > > > > > Am 2016-08-02 23:05, schrieb Bram Moolenaar:
> > > > > > > > Patch 7.4.2149
> > > > > > > > Problem: If a test leaves a window open a following test may
> > > > > > > > fail.
> > > > > > > > Solution: Always close extra windows after running a test.
> > > > > > > > Files: src/testdir/runtest.vim, src/testdir/test_popup.vim
> > > > > > >
> > > > > > > I think, this patch broke the appveyor build:
> > > > > > > https://ci.appveyor.com/project/chrisbra/vim/build/1670/job/l38go72qo1ucc694#L2247
> > > > > >
> > > > > > Why would it break only there? The tests pass for me.
> > > > >
> > > > > I don't know. But if you go on history, you can see, that the failure
> > > > > started exactly with this patch (also happened at the win32-installer
> > > > > builds).
> > > > >
> > > > > I pushed the rebuild commit button, perhaps, that was just a
> > > > > temporary
> > > > > flaw?
> > > >
> > > > Something is seriously broken. On windows, I can reproduce the problem.
> > > > When the command :lhelpgrep quickfix has been executed and the location
> > > > list has been opened, w:quickfix_title is still ':lexpr ""'
> > > >
> > > >
> > > > I'll try to debug this later.
> > >
> > > I think, it is opening the locationlist of the wrong window.
> > > However, I don't understand, why it only happens on Windows.
> > >
> > > This patch fixes it for me:
> > > diff -r ecc1173685b0 src/testdir/test_quickfix.vim
> > > --- a/src/testdir/test_quickfix.vim Tue Aug 02 23:15:07 2016 +0200
> > > +++ b/src/testdir/test_quickfix.vim Wed Aug 03 17:00:17 2016 +0200
> > > @@ -407,6 +407,7 @@
> > >
> > > function Test_helpgrep()
> > > call s:test_xhelpgrep('c')
> > > + helpclose
> > > call s:test_xhelpgrep('l')
> > > endfunc
> >
> > Thanks. I do wonder why the behavior differs on Windows...
> >
>
> Seems like somewhere in the heap was destroyed by an invalid memory
> accessing,
> which was caused by some old bugs long long ago both in unix build and
> windows build.
>
> Some un-important variables in the heap had already been modified by accident
> in the previous releases, and they had not been noticed before.
>
> As the code base is growing, heap structure is changing too, these old bugs
> become harmful.
>
> Issues are both in unix and windows, but the heap structures in unix and
> windows are different. It just didn't lead to serious consequences in unix.
>
> If we have enough test, we may also find some strange behaviors caused by
> these bugs.
>
> if so, something really bad
> Just a guess, hope I am wrong.
Running test_quickfix under Valgrind doesn't reveal problems.
--
THEOREM: VI is perfect.
PROOF: VI in roman numerals is 6. The natural numbers < 6 which divide 6 are
1, 2, and 3. 1+2+3 = 6. So 6 is a perfect number. Therefore, VI is perfect.
QED
-- Arthur Tateishi
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.