Re: Broken Code Highlighting in KDevelop

Christoph Cullmann <[email protected]>
Newsgroups gmane.comp.kde.devel.kwrite
Message-ID <[email protected]>
On 2021-02-17 09:40, David Redondo wrote:
> Hi,
> 
> recently files began to start losing their highlighting when editing in
> KDevelop. Symptoms are as follows:
>  - After inserting a new line anywhere in a document, everything below 
> the new
> line will lose its highlighting
>  - When writing in the new line, the new code is highlighted correctly
>  - Removing the new line restores correct highlighting in the rest of 
> the file
> 
> Yesterday after an older KDevelop showed the same behavior, I bisected
> fde333c87353e7c7424c7bce5cbc2f984bc868c1 in KTextEditor to have 
> introduced
> this. Nothing there immediately appears to me to cause this.
> With the power of debug statements I confirmed that KDevelop reaches 
> the
> "applyHighlighting" function 
> (https://invent.kde.org/kdevelop/kdevelop/-/blob/
> master/kdevplatform/language/highlighting/codehighlighting.cpp#L519) 
> and is
> not hitting any of the early returns. Then follows some range logic and 
> I did
> see that the setAttribute calls at the end are also happening.
> 
> I'm not sure if the KTextEditor change surfaced a bug in KDevelop 
> (somewhere
> in the range manipulation?) or if something in KTextEditor is not 
> working
> correctly.
> 

No idea.

I only know that without these fix, you can run into invalid 
hashed/cached ranges,
see the matching unit test

https://invent.kde.org/frameworks/ktexteditor/-/commit/eb42f8903da9b04a070ecb20a9ec42686e27d7b1

Perhaps this change is not 100% correct, but then somebody must try
to figure out why ;=)

Greetings
Christoph


> Best Regards,
> David

-- 
Ignorance is bliss...
https://cullmann.io | https://kate-editor.org
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.