Subject: bug#76371: 31.0.50; M-% -> void variable

From: Gerd Möllmann <[email-masked]>
Date: Tue, 18 Feb 2025 14:59:45 +0100

Po Lu <[email-masked]> writes:

> Gerd Möllmann <[email-masked]> writes:
>
>> Po Lu <[email-masked]> writes:
>>
>>> Please test:
>>>
>>> diff --git a/lisp/replace.el b/lisp/replace.el
>>> index b1b417b226f..8c7b3095219 100644
>>> --- a/lisp/replace.el
>>> +++ b/lisp/replace.el
>>> @@ -2880,7 +2880,9 @@ perform-replace
>>>           (region-filter nil)
>>>  
>>>           ;; Disable text conversion during the replacement operation.
>>> -         (old-text-conversion-style overriding-text-conversion-style)
>>> +         (old-text-conversion-style
>>> +          (and (boundp 'overriding-text-conversion-style)
>>> +               overriding-text-conversion-style))
>>>           overriding-text-conversion-style
>>>  
>>>           ;; Data for the next match.  If a cons, it has the same format as
>>
>> Could we have a defvar somewhere, for the case textconv.c isn't
>> compiled?
>
> No idea.  I've just checked in a different fix that won't pollute
> o-t-c-s with a binding.

Interestingly, there is already

tool-bar.el:
  430 
  431 (defvar overriding-text-conversion-style)

No idea what that is for and if it's present when building without
window-system.