GNU bug report logs - #29170
Emacs freezes when doing a gui-get-selection on OpenBSD

Previous Next

Package: emacs;

Reported by: daimrod <at> omecha.info (Grégoire Jadi)

Date: Mon, 6 Nov 2017 14:22:02 UTC

Severity: normal

Tags: confirmed

Merged with 45544

Found in versions 26.0.90, 27.1.90

Fixed in version 28.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #56 received at 29170 <at> debbugs.gnu.org (full text, mbox):

From: <daimrod <at> omecha.info>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Eli Zaretskii <eliz <at> gnu.org>, daimrod <at> omecha.info, 29170 <at> debbugs.gnu.org
Subject: Re: bug#29170: 26.0.90; Emacs freezes when capturing an org-template
Date: Thu, 08 Oct 2020 23:43:28 +0200
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> daimrod <at> omecha.info writes:
>
>>> If this is an OpenBSD-only problem, maybe we should install that
>>> change #ifdef'ed by OpenBSD?
>
> Yes, but as noted by others in the thread, the patch leads to other
> issues on OpenBSD, too, so it's not a complete solution.
>
>> I'll have to test it, but I've been told that the issue doesn't occur
>> when the "junk" is disabled in the memory allocator (j = 0).
>>
>> See MALLOC OPTIONS in malloc(3) https://man.openbsd.org/malloc
>>
>> j       “Less junking”.  Decrease the junk level by one if it is larger
>>         than 0.  Junking writes some junk bytes into the area allocated.
>>         Junk is bytes of 0xdb when allocating; freed chunks are filled
>>         with 0xdf.  By default the junk level is 1: after free, small
>>         chunks are completely junked; for pages the first part is junked.
>>         After a delay, the filling pattern is validated and the process
>>         is aborted if the pattern was modified.  For junk level 2,
>>         junking is done on allocation as well and without size
>>         restrictions.  If the junk level is zero, no junking is
>>         performed.
>
> Huh.  How odd that this would have an affect on this infloop?

So, I tested it on emacs-27.1 with junk disabled and it still freezes.

$ MALLOC_OPTIONS=jj emacs -q

(let ((value 'SECONDARY)
      (x-selection-timeout 2000))
  ;;; from org-get-x-clipboard in lisp/org-compat.el
  (gui-get-selection value 'UTF8_STRING)
  (gui-get-selection value 'COMPOUND_TEXT)
  (gui-get-selection value 'STRING)
  (gui-get-selection value 'TEXT))

-- 
daimrod
PGP : AF26 E9C2 A1C8 8D32 A868  4386 1373 5477 2B65 1894




This bug report was last modified 3 years and 338 days ago.

Previous Next


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