Colomban,
Really my fault ( Thanks a lot for participation and detecting root cause! I've tested your patch, it fixes the issue. Thanks again!
P.S. The only question, when the new version of geany-plugins is planned to be released?
On 9 March 2015 at 18:19, Colomban Wendling lists.ban@herbesfolles.org wrote:
Hi,
tl;dr: I found the issue in the end, which is in a call from the plugin. Here below is my train of responses because they still are of some interest, but you can skip directly to the last paragraph.
Le 09/03/2015 14:48, Volodymyr Kononenko a écrit :
A search with git bisect has shown, that the bug was introduced with updating Scintilla to 3.3.2:
[…]
Similar issue http://sourceforge.net/p/scintilla/bugs/1604/ I've found on Scintilla bug tracker was fixed only for win32 - here is the patch <
http://sourceforge.net/p/scintilla/code/ci/23f89aef53c7ab73bdd45ae1302b97698...
.
I highly doubt it's anything like the same issue, because the one described here is a redraw issue, which should get fixed when triggering another redraw, like e.g. scrolling the offending part offscreen and back, while the issues I see with pairtaghighlighter persist after redraws (which means the indicators themselves are still here).
Moreover, clearing the indicators on the whole buffer:
scintilla_send_message(sci, SCI_INDICATORCLEARRANGE, 0,
sci_get_length(sci));
instead of only the range passed to the function fixes the issue for me, so I would really bet on inappropriate clear range.
Which is indeed kind of weird because it really does work with 1.23 and not 1.24, even with the very same plugin .so.
I tried to detect the first Scintilla commit, which introduced the issue, but I see that merging Scintilla to Geany sources is non-trivial. Build failed after the first attempt.
Folks, what do you think about it? Is it enough information that it is Scintilla issue and we need to report it or something was not taken into account during upgrading to 3.3.2?
Actually it's the plugin's SCI_INDICATORCLEARRANGE http://www.scintilla.org/ScintillaDoc.html#SCI_INDICATORCLEARRANGE that is incorrect: the second parameter should be the *length* to clear, not the end position. Apparently earlier Scintilla versions were forgiving on the range, but new ones aren't and do nothing with invalid ranges.
I made you a PR fixing the issue: https://github.com/geany/geany-plugins/pull/200
Regards, Colomban _______________________________________________ Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel