Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vim exits with error "ICE default IO error handler doing an exit(), pid = 6769, errno = 32" #156

Open
GoogleCodeExporter opened this issue Aug 18, 2015 · 3 comments

Comments

@GoogleCodeExporter
Copy link

Summary:

Vim exits with the error:

ICE default IO error handler doing an exit(), pid = 6769, errno = 32


What steps will reproduce the problem?

1. In a terminal, run:

$ for i in $(seq 1 60); do echo foo; sleep 1; done | vim -

2. Wait for about a minute and vim will exit with this error message:

"-stdin-" 60L, 240CICE default IO error handler doing an exit(), pid = 6769, 
errno = 32

What is the expected output? What do you see instead?

Vim should not exit with such an error.
It should display instead 60 lines containing "foo".  

What version of the product are you using? On what operating system?

I'm using vim-7.4a.39 BETA on Linux x86_64 (xubuntu-12.10).
In case it matters, Vim was configured with:

./configure --enable-gui=gtk2 --with-features=huge 
--enable-pythoninterp=dynamic --enable-python3interp=dynamic 
--enable-tclinterp=yes --enable-rubyinterp=dynamic  --enable-mzschemeinterp 
--enable-luainterp=dynamic

Please provide any additional information below.

Interestingly, reducing 60 to 55 in the above command does trigger the error 
anymore. In other words, the following command works all the time:

$ for i in $(seq 1 55); do echo foo; sleep 1 ; done | vim -

I also see that the default vim with xubuntu-12.10 (that vim-7.3.547 in 
/usr/bin/vim) does not have this bug. So either it's a regression introduced 
recently, or a different compilation option triggers the bug or not.

I happen to find this bug because I ran something like this in a slow svn 
repository:

$ svn log | vim -

This caused vim to exit with the "ICE default IO error handler doing an exit()" 
error.  After trial and error, I found that I could reproduce this bug using a 
more reproducible command:

$ for i in $(seq 1 60); do echo foo; sleep 1; done | vim -

Original issue reported on code.google.com by dominiqu...@gmail.com on 22 Jul 2013 at 6:27

@GoogleCodeExporter
Copy link
Author

The bug does not happen when starting vim with the -X option. So this works:

$ for i in $(seq 1 60); do echo foo; sleep 1; done | vim -X -

vim-7.3.547 in /usr/bin/vim (xubuntu-12.10) is not affected by this bug because 
it is built without X11 feature. But the same version recompiled with +X11 
feature has the bug.


Original comment by dominiqu...@gmail.com on 22 Jul 2013 at 7:50

@GoogleCodeExporter
Copy link
Author

FWIW, my vim 7.4a.35, huge with GTK2 (and so with +X11) on Kubuntu 13.04 does 
not give this trouble; I've tried with 60, 65 and 125.

Regards, John Little

Original comment by John.B.L...@gmail.com on 23 Jul 2013 at 6:00

@GoogleCodeExporter
Copy link
Author

The error also happens when using options -u NONE --noplugin:

$ for i in $(seq 1 60); do echo foo; sleep 1; done | vim -u NONE --noplugin -
... wait ~ 1 minute...
"-stdin-" 60 lines, 240 charactersICE default IO error handler doing an exit(), 
pid = 3477, errno = 32

errno = 32 means EPIPE (broken pipe).

Besides happening on xubuntu-12.10, I can also reproduce it on another machine 
which uses xubuntu-12.04.2, vim-7.4a.39 BETA.

But I cannot reproduce it on an older machine: ubuntu-10.10, vim-7.4a.39 BETA.

Original comment by dominiqu...@gmail.com on 23 Jul 2013 at 7:11

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant