On 4 June 2016, Bram Moolenaar <[email protected]> wrote:
>
> Lcd wrote:
>
> > > > Scenario:
> > > >
> > > > (1) umask 0177
> > > > (2) run Vim
> > > > (3) in Vim run system(), say:
> > > >
> > > > :echo system('ls')
> > > >
> > > > On Linux machines the result is:
> > > >
> > > > E484: Can't open file /tmp/viEkD0f/2
> > > >
> > > > It's easy to see why:
> > > >
> > > > $ ls -ld /tmp/viEkD0f
> > > > drw------- 2 1034 1023 40 Jun 4 13:32 /tmp/viEkD0f/
> > > >
> > > > The code has provisions to deal with this situation, but only on
> > > > systems that don't have mkdtemp(3). Glibc has mkdtemp(3).
> > >
> > > Setting umask to that value is like shooting yourself in the foot.
> > > I would not call this a Vim problem.
> >
> > Sure, it's useless in a login shell. It isn't as clear cut whether
> > it's always useless in a script. And Vim's system() shouldn't stop
> > working because of it. I'm actually just relaying the report here,
> > since some people seem to have a use for that umask, and blaming me for
> > the results:
> >
> > https://github.com/scrooloose/syntastic/issues/1781
>
> Actually, Vim already has code to work around that, see the use of
> vim_mkdir() in vim_tempname(). But somehow it doesn't work...
> Ah, when the use of mkdtemp() was added this part was omitted.
> That can be fixed.
The problem is indeed fixed in 7.4.1889, thank you.
/lcd
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.