Subject: bug#33959: 26.1.90; python.el font-lock buffer wreaks havoc when company is enabled

From: Noam Postavsky <[email-masked]>
Date: Tue, 22 Oct 2019 20:18:17 -0400

tags 33959 fixed
close 33959 27.1
quit

Carlos Pita <[email-masked]> writes:

> Hi Noam, I don't want to be insistent (and I'm probably being)

No worries, sorry for taking so long on this.

> As it is now, it's certainly buggy. I know it would be desirable to
> provide an unit test for [1] but this new commit I'm providing can't
> harm (remember it's just an "around advice": `(unless (string= output
> "") ... )`) and I believe my argument against the way the empty output
> condition was checked before is sound and simple enough. Thanks and
> sorry for the insistence.

Looking at this now afresh, I agree that this change looks safe
enough.  I think I was confused before by the other patch removing that
same guard in the first branch of the `if'.

I do suspect that the filter function receiving an empty string is a bug
in itself though.  Meanwhile I've pushed your fix (since we'll want it
in the GNU ELPA python.el for Emacs 26 and earlier regardless of whether
the underlying process filter bug is fixed).

[2: ab67287872]: 2019-10-22 20:11:49 -0400
  Avoid extra lines in python-shell font lock buffer (Bug#33959)
  https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=ab6728787245e0d46bd8a8919e30c882f6011182