macvim-dev / macvim-dev/macvim

VIM crashes after executing xelatex and colorscheme

Open
#1,202 11 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Vim Script
Stars
7.9k
Forks
691
PR merge metrics
No merged PRs in 30d

Description

Describe the bug
When there is an autocommand to change the colorscheme Vim crashes after executing xelatex.

To Reproduce
Detailed steps to reproduce the behavior:

  1. Include the code below in the .vimrc file:
let g:colors = "lucius"
augroup color
    au!
    au WinEnter * exe "colorscheme ".g:colors
augroup END

set makeprg=xelatex\ \-file\-line\-error\ \-interaction=nonstopmode
nmap <leader>k :exec "silent make ".shellescape(expand('%'))<cr>
  1. Load a latex file
  2. Compile with <leader>k
  3. Navigate to another latex file
  4. Vim crashes

See report below:

Process:               MacVim [33498]
Path:                  /Applications/MacVim.app/Contents/MacOS/MacVim
Identifier:            org.vim.MacVim
Version:               8.2.2164 (169)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           MacVim [33498]
User ID:               502

Date/Time:             2021-07-21 18:42:43.350 -0700
OS Version:            Mac OS X 10.15.7 (19H2)
Report Version:        12
Bridge OS Version:     4.6 (17P6610)
Anonymous UUID:        35483298-412C-44A4-AED8-52EE10686945

Sleep/Wake UUID:       A07E24BD-D769-40DF-B2B1-77023F65444C

Time Awake Since Boot: 14000 seconds
Time Since Wake:       4400 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x000076141ecb4d88
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [33498]

VM Regions Near 0x76141ecb4d88:
    Stack                  00007000021fc000-000070000227e000 [  520K] rw-/rwx SM=COW  thread 6
--> 
    MALLOC_TINY            00007f84c8400000-00007f84c8500000 [ 1024K] rw-/rwx SM=PRV  

Application Specific Information:
objc_msgSend() selector name: retain

Expected behavior
Vim should load new file without crashing.

Environment (please complete the following information):

  • Vim version: 8.2 (Dec 19 2020)
  • OS: MacOS 10.15.7
  • Terminal: GUI

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the crash in MacVim with the supplied .vimrc, the WinEnter colorscheme autocommand, and the xelatex makeprg mapping. Compare behavior while loading one LaTeX file, running k, and navigating to another file against the macOS crash report. Done means navigating between files no longer crashes MacVim in this scenario.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, vim
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.