<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/os, branch v0.2.2</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>os_nodetype: rework</title>
<updated>2017-11-17T22:26:51+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2017-11-16T00:00:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=bf3f0efb3a98afbcc15020cc3399c71db8f831e7'/>
<id>bf3f0efb3a98afbcc15020cc3399c71db8f831e7</id>
<content type='text'>
Make the Windows impl closer to Vim os_win32.c, and the Unix impl closer
to Vim os_unix.c.

Outcomes:
- Do not send negative fd to close(). ref #4806 #4772 #6860
- Fallback return-value is now correct in (hopefully) all cases.
- unix: check S_ISXXX instead of relying on os_open (which can fail for
  irrelevant reasons). buf_write() expects NODE_WRITABLE for character
  devices such as /dev/stderr. 96f834a8424e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make the Windows impl closer to Vim os_win32.c, and the Unix impl closer
to Vim os_unix.c.

Outcomes:
- Do not send negative fd to close(). ref #4806 #4772 #6860
- Fallback return-value is now correct in (hopefully) all cases.
- unix: check S_ISXXX instead of relying on os_open (which can fail for
  irrelevant reasons). buf_write() expects NODE_WRITABLE for character
  devices such as /dev/stderr. 96f834a8424e
</pre>
</div>
</content>
</entry>
<entry>
<title>os_open, os_stat: UV_EINVAL on NULL filename</title>
<updated>2017-11-17T21:30:38+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2017-11-14T21:59:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d135ba99b2945ca18fe3246cbb89a0920868ccf6'/>
<id>d135ba99b2945ca18fe3246cbb89a0920868ccf6</id>
<content type='text'>
EINVAL (instead of EFAULT) because that's what glibc does:
https://github.com/bminor/glibc/blob/master/io/open.c#L35

os_nodetype: check for UV_EINVAL explicitly.

ref #4370
ref https://github.com/neovim/neovim/issues/4370#issuecomment-344366571
ref ac055d677aa9eff9fca11cecb5ac7f7a4edb0265

ref #4772
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
EINVAL (instead of EFAULT) because that's what glibc does:
https://github.com/bminor/glibc/blob/master/io/open.c#L35

os_nodetype: check for UV_EINVAL explicitly.

ref #4370
ref https://github.com/neovim/neovim/issues/4370#issuecomment-344366571
ref ac055d677aa9eff9fca11cecb5ac7f7a4edb0265

ref #4772
</pre>
</div>
</content>
</entry>
<entry>
<title>pty_process_win: avoid quoting for cmd.exe</title>
<updated>2017-08-16T07:13:44+00:00</updated>
<author>
<name>erw7</name>
<email>erw7.github@gmail.com</email>
</author>
<published>2017-04-14T13:35:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=8c1782b84070d786cc1a7dfd6242a9ebc0923ad3'/>
<id>8c1782b84070d786cc1a7dfd6242a9ebc0923ad3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>win/pty: log errors</title>
<updated>2017-08-16T07:13:44+00:00</updated>
<author>
<name>erw7</name>
<email>erw7.github@gmail.com</email>
</author>
<published>2017-04-02T09:32:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d3a8c4f99289f7b65a68bf9ed5eeab34aa688e0e'/>
<id>d3a8c4f99289f7b65a68bf9ed5eeab34aa688e0e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>win/pyt: cleanup</title>
<updated>2017-08-16T07:13:44+00:00</updated>
<author>
<name>erw7</name>
<email>erw7.github@gmail.com</email>
</author>
<published>2017-04-02T09:16:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=84fb794da653fc3bcc2832816ca0cab01b4e0400'/>
<id>84fb794da653fc3bcc2832816ca0cab01b4e0400</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>win/pty: quote_cmd_arg(): check bounds</title>
<updated>2017-08-16T07:13:43+00:00</updated>
<author>
<name>erw7</name>
<email>erw7.github@gmail.com</email>
</author>
<published>2017-03-30T09:30:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=3b992f16889b45215ab6f867edaec5201776d579'/>
<id>3b992f16889b45215ab6f867edaec5201776d579</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>win/pty: jobstart, jobstop: fix null-pointer dereference</title>
<updated>2017-08-16T07:13:43+00:00</updated>
<author>
<name>erw7</name>
<email>erw7.github@gmail.com</email>
</author>
<published>2017-03-29T12:39:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=e635754e8e9a92d1537ccc980c63eaa2e9d732bb'/>
<id>e635754e8e9a92d1537ccc980c63eaa2e9d732bb</id>
<content type='text'>
- Make sure that proc-&gt;in is not NULL, because nvim crashed when
  starting a job with pty.
- Make sure that proc-&gt;out is not NULL, because nvim crashed when stopping
  a job opened with pty.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Make sure that proc-&gt;in is not NULL, because nvim crashed when
  starting a job with pty.
- Make sure that proc-&gt;out is not NULL, because nvim crashed when stopping
  a job opened with pty.
</pre>
</div>
</content>
</entry>
<entry>
<title>win: support :terminal</title>
<updated>2017-08-16T07:13:43+00:00</updated>
<author>
<name>erw7</name>
<email>erw7.github@gmail.com</email>
</author>
<published>2017-03-28T09:07:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=4b1f21de75f9981007d80aca8355239e8615d6bd'/>
<id>4b1f21de75f9981007d80aca8355239e8615d6bd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>win: integrate winpty (WIP)</title>
<updated>2017-08-16T07:13:43+00:00</updated>
<author>
<name>Ryan Prichard</name>
<email>ryan.prichard@gmail.com</email>
</author>
<published>2016-02-24T08:14:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=7f22a27a10655dc40528f35034cbdf8c9543241c'/>
<id>7f22a27a10655dc40528f35034cbdf8c9543241c</id>
<content type='text'>
Handling of process exit is still broken.  It detects the moment when the
child process exits, then quickly stops polling for process output.  It
should continue polling for output until the agent has scraped all of the
process' output.  This problem is easy to notice by running a command like
"dir &amp;&amp; exit", but even typing "exit&lt;ENTER&gt;" can manifest the problem --
the "t" might not appear.

winpty's Cygwin adapter handles shutdown by waiting for the agent to close
the CONOUT pipe, which it does after it has scraped the child's last
output.  AFAIK, neovim doesn't do anything interesting when winpty closes
the CONOUT pipe.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Handling of process exit is still broken.  It detects the moment when the
child process exits, then quickly stops polling for process output.  It
should continue polling for output until the agent has scraped all of the
process' output.  This problem is easy to notice by running a command like
"dir &amp;&amp; exit", but even typing "exit&lt;ENTER&gt;" can manifest the problem --
the "t" might not appear.

winpty's Cygwin adapter handles shutdown by waiting for the agent to close
the CONOUT pipe, which it does after it has scraped the child's last
output.  AFAIK, neovim doesn't do anything interesting when winpty closes
the CONOUT pipe.
</pre>
</div>
</content>
</entry>
<entry>
<title>io: more guards against NULL filename (#7159)</title>
<updated>2017-08-13T16:46:09+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2017-08-13T16:46:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d258ac8ed21b3a202212792688b237d0741f6844'/>
<id>d258ac8ed21b3a202212792688b237d0741f6844</id>
<content type='text'>
References ac055d677aa9
References #4370</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
References ac055d677aa9
References #4370</pre>
</div>
</content>
</entry>
</feed>
