emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#43812: closed (28.0.50; segfault in ns_clear_under_internal_border)


From: GNU bug Tracking System
Subject: bug#43812: closed (28.0.50; segfault in ns_clear_under_internal_border)
Date: Tue, 06 Oct 2020 20:07:02 +0000

Your message dated Tue, 6 Oct 2020 21:06:01 +0100
with message-id <20201006200601.GC60347@breton.holly.idiocy.org>
and subject line Re: bug#43812: 28.0.50; segfault in 
ns_clear_under_internal_border
has caused the debbugs.gnu.org bug report #43812,
regarding 28.0.50; segfault in ns_clear_under_internal_border
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
43812: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=43812
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: 28.0.50; segfault in ns_clear_under_internal_border Date: Sun, 04 Oct 2020 21:30:04 -0700 User-agent: mu4e 1.5.5; emacs 28.0.50
(apologies if this is sent twice, I got a bounce back on the first
attempt)

This one is difficult to figure out. I can reproduce it reliably in my
setup but I don't know how to find a minimal working example.

The segfault is triggered for me in the following manner:

- trigger a company popup in lisp for a library not yet loaded (for me
  it was mu4e; only the autoloads existed)
- load said library
- trigger another company popup for said library
- segfault

I was able to bisect the segfault to
c4c5db3de70b55f8bc03c9fee35e29d60f41f16e.

In a debugger, I got this backtrace:

lldb nextstep/Emacs.app/Contents/MacOS/Emacs
(lldb) target create "nextstep/Emacs.app/Contents/MacOS/Emacs"
Current executable set to 'nextstep/Emacs.app/Contents/MacOS/Emacs' (x86_64).
(lldb) env CG_CONTEXT_SHOW_BACKTRACE=1
(lldb) r
Process 21015 launched: 
'/Users/sean/projects/emacs/nextstep/Emacs.app/Contents/MacOS/Emacs' (x86_64)
2020-10-04 13:22:43.470977-0700 Emacs[21015:701243] MessageTracer: Falling back 
to default whitelist
2020-10-04 13:22:43.632600-0700 Emacs[21015:701243] SecTaskLoadEntitlements 
failed error=22 cs_flags=20, pid=21015
2020-10-04 13:22:43.632691-0700 Emacs[21015:701243] 
SecTaskCopyDebugDescription: Emacs[21015]/0#-1 LF=0
Process 21015 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS 
(code=1, address=0xc0)
    frame #0: 0x000000010044c508 
Emacs`ns_clear_under_internal_border(f=0x000000014c088a00) at nsterm.m:3052:33
   3049         face = FRAME_DEFAULT_FACE (f);
   3050
   3051       ns_focus (f, &frame_rect, 1);
-> 3052       [ns_lookup_indexed_color (NS_FACE_BACKGROUND (face), f) set];
   3053       for (int i = 0; i < 4 ; i++)
   3054         {
   3055           NSDivideRect (frame_rect, &edge_rect, &frame_rect, 
border_width, edge[i]);
Target 0: (Emacs) stopped.
(lldb)


In GNU Emacs 28.0.50 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60 
Version 10.14.6 (Build 18G95))
 of 2020-10-04 built on laptop
Repository revision: bd371f18b606f00bee4053e89b2f91bcd67325ca
Repository branch: smf/xwidget-content-block
Windowing system distributor 'Apple', version 10.3.1671
System Description:  Mac OS X 10.14.6

Configured using:
 'configure
 --prefix=/Users/sean/projects/emacs/nextstep/Emacs.app/Contents/MacOS
 
--enable-locallisppath=/Users/sean/projects/emacs/nextstep/Emacs.app/Contents/MacOS/opt/gccemacs/site-lisp
 --with-ns --with-mailutils --with-cairo --with-modules --with-xml2
 --with-gnutls --with-json --with-rsvg --with-nativecomp --with-xwidgets
 --with-harfbuzz --disable-silent-rules --disable-ns-self-contained
 CFLAGS=-I/usr/local/Cellar/gcc/10.2.0/include
 'LDFLAGS=-L/usr/local/Cellar/gcc/10.2.0/lib/gcc/10
 -I/usr/local/Cellar/gcc/10.2.0/include''

Configured features:
JPEG TIFF GIF PNG RSVG DBUS GLIB NOTIFY KQUEUE ACL GNUTLS LIBXML2 ZLIB
TOOLKIT_SCROLL_BARS NS MODULES NATIVE_COMP THREADS XWIDGETS JSON PDUMPER
LCMS2

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8

Major mode: Elisp

Minor modes in effect:
  git-gutter-mode: t
  elisp-slime-nav-mode: t
  highlight-quoted-mode: t
  rainbow-delimiters-mode: t
  highlight-numbers-mode: t
  save-place-mode: t
  global-so-long-mode: t
  whitespace-mode: t
  flycheck-posframe-mode: t
  hl-fill-column-mode: t
  vi-tilde-fringe-mode: t
  display-line-numbers-mode: t
  highlight-indent-guides-mode: t
  winner-mode: t
  show-paren-mode: t
  smartparens-global-mode: t
  smartparens-mode: t
  global-undo-fu-session-mode: t
  undo-fu-session-mode: t
  undo-fu-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  ws-butler-global-mode: t
  ws-butler-mode: t
  editorconfig-mode: t
  hl-todo-mode: t
  org-roam-mode: t
  org-msg-mode: t
  outline-minor-mode: t
  global-magit-file-mode: t
  magit-file-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  shell-dirtrack-mode: t
  yas-minor-mode: t
  recentf-mode: t
  which-key-mode: t
  savehist-mode: t
  better-jumper-mode: t
  better-jumper-local-mode: t
  company-box-mode: t
  global-company-mode: t
  company-mode: t
  ivy-posframe-mode: t
  ivy-prescient-mode: t
  prescient-persist-mode: t
  ivy-rich-mode: t
  ivy-mode: t
  volatile-highlights-mode: t
  gcmh-mode: t
  hl-line-mode: t
  doom-modeline-mode: t
  global-page-break-lines-mode: t
  page-break-lines-mode: t
  whole-line-or-region-global-mode: t
  whole-line-or-region-local-mode: t
  global-dot-mode: t
  dot-mode: t
  fancy-narrow-mode: t
  solaire-global-mode: t
  solaire-mode: t
  persp-mode: t
  delete-selection-mode: t
  projectile-mode: t
  ns-auto-titlebar-mode: t
  +popup-mode: t
  general-override-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  prettify-symbols-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  window-divider-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  hs-minor-mode: t

Load-path shadows:
/Users/sean/projects/doom-emacs/.local/straight/build/emacs-websocket/websocket 
hides /Users/sean/projects/doom-emacs/.local/straight/build/websocket/websocket

Features:
(shadow git-gutter-fringe fringe-helper git-gutter vc-git
auto-minor-mode flycheck-cask flycheck-package package-lint finder
finder-inf lisp-mnt elisp-slime-nav highlight-quoted rainbow-delimiters
highlight-numbers parent-mode hideshow saveplace so-long char-fold
counsel-projectile pyvenv eshell esh-cmd esh-ext esh-opt esh-proc esh-io
esh-arg esh-module esh-groups esh-util mu4e-patch mu4e-alert time ht
alert log4e notifications gntp org-mu4e mu4e mu4e-org mu4e-main
mu4e-view mu4e-headers mu4e-compose mu4e-context mu4e-draft mu4e-actions
ido rfc2368 smtpmail mu4e-mark mu4e-proc mu4e-utils doc-view jka-compr
image-mode exif mu4e-lists mu4e-message flow-fill mu4e-vars mu4e-meta
disp-table whitespace flycheck-posframe hl-fill-column vi-tilde-fringe
display-line-numbers highlight-indent-guides adaptive-wrap spell-fu
ispell editorconfig-core editorconfig-core-handle editorconfig-fnmatch
winner paren smartparens-config smartparens-text smartparens
undo-fu-session undo-fu flycheck-clj-kondo flycheck ws-butler
editorconfig mail-extr emacsbug sendmail nav-flash pulse cursor-sensor
amx org-agenda magit-todos pcre2el rxt re-builder hl-todo orgit
company-org-roam org-roam org-roam-graph org-roam-doctor org-roam-db
emacsql-sqlite3 emacsql emacsql-compiler org-roam-dailies
org-roam-capture org-capture org-roam-completion org-roam-buffer
org-roam-faces org-roam-macs org-roam-compat org-id org-refile
smartparens-org org-yt org-element avl-tree org-msg htmlize gnus-msg
gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum shr kinsoku
svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud
nnimap nnmail mail-source utf7 netrc nnoo parse-time iso8601 gnus-spec
gnus-int gnus-range gnus-win gnus nnheader org ob ob-tangle ob-ref
ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint
org-pcomplete org-list org-faces org-entities noutline outline
org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys
org-compat org-macs org-loaddefs find-func cal-menu calendar
cal-loaddefs github-review deferred ghub-graphql treepy gsexp ghub
url-http url-gw nsm url-auth url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util mailcap let-alist
gnutls magit-autoloads magit-submodule magit-obsolete magit-popup
magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull
magit-fetch magit-clone magit-remote magit-commit magit-sequence
magit-notes magit-worktree magit-tag magit-merge magit-branch
magit-reset magit-files magit-refs magit-status magit magit-repos
magit-apply magit-wip magit-log which-func imenu magit-diff smerge-mode
diff diff-mode magit-core magit-autorevert magit-margin magit-transient
magit-process magit-mode lv core-packages package browse-url
url-handlers url-parse url-vars git-commit transient format-spec
magit-git magit-section magit-utils crm log-edit message rmc puny rfc822
mml mml-sec epa epg epg-config gnus-util rmail rmail-loaddefs time-date
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util
ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader
pcvs-util add-log with-editor async-bytecomp async shell pcomplete
doom-snippets doom-snippets-lib yasnippet elisp-mode recentf server
objed objed-objects cap-words superword subword face-remap which-key
savehist better-jumper company-box company-box-doc company-box-icons
dash-functional company-capf company ivy-posframe posframe ivy-prescient
prescient etags fileloop generator ivy-xref all-the-icons-ivy ivy-rich
counsel xdg dired dired-loaddefs autorevert filenotify swiper ivy
ivy-faces ivy-overlay colir color xref project volatile-highlights gcmh
hl-line bitwarden tree-widget wid-edit auth-source eieio eieio-core
eieio-loaddefs password-cache json map dtrt-indent doom-modeline
doom-modeline-segments doom-modeline-env doom-modeline-core shrink-path
f all-the-icons all-the-icons-faces data-material data-weathericons
data-octicons data-fileicons data-faicons data-alltheicons memoize dash
page-break-lines whole-line-or-region dot-mode fancy-narrow simple-mpc
simple-mpc-query simple-mpc-current-playlist simple-mpc-utils
simple-mpc-mode simple-mpc-vars s doom-themes-ext-org
doom-themes-ext-treemacs solaire-mode doom-nord-theme doom-themes
doom-themes-base persp-mode delsel projectile grep compile
text-property-search comint ansi-color ring ibuffer-vc ibuf-ext ibuffer
ibuffer-loaddefs thingatpt html2text smartparens-lua ns-auto-titlebar
ibuf-macs easy-mmode derived core-editor core-projects core-ui edmacro
kmacro comp warnings core-keybinds pp general cl-extra help-mode
easymenu seq byte-opt cl-seq use-package-core bytecomp byte-compile
cconv core-modules cl tex-site rx realgud-recursive-autoloads advice
core core-lib cl-macs gv cl-loaddefs cl-lib subr-x tooltip eldoc
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/ns-win
ns-win ucs-normalize mule-util term/common-win tool-bar dnd fontset
image regexp-opt fringe tabulated-list replace newcomment text-mode
lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch
timer select scroll-bar mouse jit-lock font-lock syntax facemenu
font-core term/tty-colors frame minibuffer cl-generic cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face pcase macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads
xwidget-internal dbusbind kqueue cocoa ns lcms2 multi-tty
make-network-process emacs)

Memory information:
((conses 16 764709 88028)
 (symbols 48 68905 2)
 (strings 32 348866 18081)
 (string-bytes 1 8324914)
 (vectors 16 79661)
 (vector-slots 8 1967677 52708)
 (floats 8 1554 660)
 (intervals 56 6011 498)
 (buffers 992 17))



--- End Message ---
--- Begin Message --- Subject: Re: bug#43812: 28.0.50; segfault in ns_clear_under_internal_border Date: Tue, 6 Oct 2020 21:06:01 +0100
On Mon, Oct 05, 2020 at 05:38:04PM -0700, Sean Farley wrote:
> 
> Alan Third <alan@idiocy.org> writes:
> > This is a bit of a shot in the dark, but does the attached patch fix
> > it?
> 
> Thanks for the quick reply! After a series of manual tests, I think I
> can say that, yes, this patch seems to fix the segfault. One thing I
> noted is that I had to distclean and reconfigure to get the state of the
> bug to appear / disappear. But perhaps that is an artifact of me using
> the native-comp branch (or maybe my lack of how object files are
> recompiled into Emacs.app)
> 
> Either way, much appreciated for the quick fix!

Thanks! I've pushed it to master.
-- 
Alan Third


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]