GNU bug report logs - #77942
31.0.50; replace-region-contents gets stuck

Previous Next

Package: emacs;

Reported by: Gerd Möllmann <gerd.moellmann <at> gmail.com>

Date: Sun, 20 Apr 2025 15:30:07 UTC

Severity: normal

Found in version 31.0.50

Full log


View this message in rfc822 format

From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: eggert <at> cs.ucla.edu, monnier <at> iro.umontreal.ca, 77942 <at> debbugs.gnu.org
Subject: bug#77942: 31.0.50; replace-region-contents gets stuck
Date: Tue, 22 Apr 2025 15:14:07 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
>> Cc: monnier <at> iro.umontreal.ca,  eggert <at> cs.ucla.edu,  77942 <at> debbugs.gnu.org
>> Date: Tue, 22 Apr 2025 13:42:15 +0200
>> 
>> Eli Zaretskii <eliz <at> gnu.org> writes:
>> 
>> >> Cc: Paul Eggert <eggert <at> cs.ucla.edu>, 77942 <at> debbugs.gnu.org
>> >> From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
>> >> Date: Tue, 22 Apr 2025 05:48:14 +0200
>> >> 
>> >> But honestly, what the heck? Does someone know what this diffing is
>> >> about in the first place?
>> >
>> > It's about leaving the unchanged portions of text intact, including
>> > their properties, overlays, markers, etc.  I believe the doc string
>> > says that much.
>> 
>> What I meant is why perform an O(ND) diff for that purpose. That's not
>> at all obvious.
>
> AFAIU, it's because the Diff algorithm makes the minimum number of
> changes.
>
>> (And it would be nice if the doc string talked about
>> that O(ND) a bit to warn users.)
>
> It does:
>
>   Because this function can be very slow if there is a large number of
>   differences between the two buffers, there are two optional arguments
>   mitigating this issue.

I find that pretty vague. If it said something about the O(ND), one
could figure out that that can be morally equivalent to O(N^2) which I
would find a fair warning.

But whatever. Funny function that one.




This bug report was last modified 56 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.