equalsraf / neovim-qt

Neovim client library and GUI, in Qt5.
https://github.com/equalsraf/neovim-qt/wiki
ISC License
1.83k stars 171 forks source link

Crash on opening multiple files on Windows #406

Open nadya-p opened 6 years ago

nadya-p commented 6 years ago

Operating System: Windows 7 x64 neovim v0.2.2 was downloaded from https://github.com/neovim/neovim/releases/download/v0.2.2/nvim-win64.zip The crash takes place without plugins.

I'm trying to open multiple files from Windows command line using nvim-qt.exe *.txt

Go to any directory, create a text file (only one). Both

nvim.exe *.txt
nvim-qt.exe *.txt

open the file as expected.

Now create a second text file in the same directory. nvim.exe *.txt still works, whereas nvim-qt.exe *.txt crashes with "nvim-qt.exe has stopped working" message box.

Details given in the message box Problem signature: Problem Event Name: APPCRASH Application Name: nvim-qt.exe Application Version: 0.0.0.0 Application Timestamp: 59b02930 Fault Module Name: Qt5Core.dll Fault Module Version: 5.7.1.0 Fault Module Timestamp: 583ffb95 Exception Code: c0000005 Exception Offset: 0025d95f OS Version: 6.1.7601.2.1.0.256.48 Locale ID: 1033 Additional Information 1: 0a9e Additional Information 2: 0a9e372d3b4ad19135b953a78882e789 Additional Information 3: 0a9e Additional Information 4: 0a9e372d3b4ad19135b953a78882e789 Read our privacy statement online: http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409 If the online privacy statement is not available, please read our privacy statement offline: C:\Windows\system32\en-US\erofflps.txt
:CheckHealth report health#nvim#check ======================================================================== ## Configuration - OK: no issues found ## Performance - OK: Build type: RelWithDebInfo ## Remote Plugins - OK: Up to date ## terminal - INFO: key_backspace (kbs) terminfo entry: key_backspace=^H - INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~ - INFO: $XTERM_VERSION='' - INFO: $VTE_VERSION='' - INFO: $TERM_PROGRAM='' - INFO: $COLORTERM='' - INFO: $SSH_TTY='' health#provider#check ======================================================================== ## Clipboard (optional) - OK: Clipboard tool found: win32yank ## Python 2 provider (optional) - WARNING: No Python interpreter was found with the neovim module. Using the first available for diagnostics. - WARNING: provider/pythonx: Could not load Python 2: python2 not found in search path or not executable. python2.7 not found in search path or not executable. python2.6 not found in search path or not executable. C:\Anaconda3\python is Python 3.6 and cannot provide Python 2. - ERROR: Python provider error - ADVICE: - provider/pythonx: Could not load Python 2: python2 not found in search path or not executable. python2.7 not found in search path or not executable. python2.6 not found in search path or not executable. C:\Anaconda3\python is Python 3.6 and cannot provide Python 2. - INFO: Executable: Not found ## Python 3 provider (optional) - INFO: `g:python3_host_prog` is not set. Searching for python in the environment. - INFO: Multiple python executables found. Set `g:python3_host_prog` to avoid surprises. - INFO: Executable: C:\Anaconda3\python - INFO: Other python executable: C:/Anaconda2/python - INFO: Python3 version: 3.6.4 - INFO: python-neovim version: 0.2.4 (outdated; from C:\Anaconda3\lib\site-packages\neovim) - WARNING: Latest python-neovim is NOT installed: 0.2.6 ## Ruby provider (optional) - WARNING: `ruby` and `gem` must be in $PATH. - ADVICE: - Install Ruby and verify that `ruby` and `gem` commands work. ## Node provider (optional) - WARNING: `node` and `npm` must be in $PATH. - ADVICE: - Install Node.js and verify that `node` and `npm` commands work.
justinmk commented 6 years ago

0.2.2 is quite old, so please try the prerelease. https://github.com/neovim/neovim/releases

janlazo commented 6 years ago

It silently crashes with no display,popup, or message box for following version.

NVIM v0.3.0-1221-g8d40b3617
Build type: RelWithDebInfo
LuaJIT 2.0.5
Compilation: C:/msys64/mingw64/bin/gcc.exe -Wconversion -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -O2 -g -DMIN_LOG_LEVEL=3 -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wimplicit-fallthrough -D__USE_MINGW_ANSI_STDIO -D_WIN32_WINNT=0x0600 -Wvla -fdiagnostics-color=auto -Wno-array-bounds -DINCLUDE_GENERATED_DECLARATIONS -IC:/projects/neovim/build/config -IC:/projects/neovim/src -IC:/projects/neovim/.deps/usr/include -IC:/msys64/mingw64/include -IC:/projects/neovim/build/src/nvim/auto -IC:/projects/neovim/build/include
Compiled by appveyor@APPVYR-WIN

Features: -acl +iconv -jemalloc +tui 
See ":help feature-compile"

   system vimrc file: "$VIM\sysinit.vim"
  fall-back for $VIM: "C:/Program Files (x86)/nvim/share/nvim"

Run :checkhealth for more info
janlazo commented 6 years ago

For reference, neovim-gtk and nyaovim can load multiple text files using the same file glob so this problem is likely on how neovim-qt passes its arguments to nvim.

equalsraf commented 4 years ago

I am still unable to reproduce this. Any idea what shell did you use back then?

When i call this from cmd.exe

 nvim-qt.exe *.txt

It opens a file *.txt with no wildcard expansion at all.

janlazo commented 4 years ago

Powershell. I pass -- before the filepath to avoid the crash.

equalsraf commented 4 years ago

Ok, I see something with powershell but i'm not sure it is the same issue

(for context i have two files a.txt and b.txt in this folder)

The following does not display any output, the program seems to fail to start, and i have not been able to trace the cause yet

.\nvim-qt.exe *.txt

However the following does open the two existing files

.\nvim-qt.exe a.txt b.txt

This variation also causes me the same problem

.\nvim-qt.exe -- *.txt