On 30 October 2012 16:57, Okan Demirmen <[email protected]> wrote: > On Tue, Oct 30, 2012 at 11:53 AM, Christiano F. Haesbaert > <[email protected]> wrote: >> On 30 October 2012 16:52, Christiano F. Haesbaert >> <[email protected]> wrote: >>> On 30 October 2012 16:45, Okan Demirmen <[email protected]> wrote: >>>> On Tue, Oct 30, 2012 at 10:32 AM, Christiano F. Haesbaert >>>> <[email protected]> wrote: >>>>> On 30 October 2012 15:03, Christiano F. Haesbaert >>>>> <[email protected]> wrote: >>>>>> On 30 October 2012 15:00, Mike Belopuhov <[email protected]> wrote: >>>>>>> On Tue, Oct 30, 2012 at 2:58 PM, Christiano F. Haesbaert >>>>>>> <[email protected]> wrote: >>>>>>>> On 30 October 2012 14:36, rustyBSD <[email protected]> wrote: >>>>>>>>> MMmhh... >>>>>>>>> >>>>>>>>> == /usr/src/usr.bin/mg/dired.c == >>>>>>>>> Go look the line 729: >>>>>>>>> >>>>>>>>> if ((fopen(dname,"r")) == NULL) { >>>>>>>>> ... >>>>>>>>> >>>>>>>>> Now you can cry >>>>>>>>> >>>>>>>> >>>>>>>> What is your point ? >>>>>>>> >>>>>>> >>>>>>> you leak a FILE object and a descriptor. >>>>>> >>>>>> Aww jesus, completely missed it ! >>>>> >>>>> So that was just to check permission: >>>>> >>>>> == >>>>> http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/mg/dired.c.diff?r1=1.45;r2=1.46 >>>>> >>>>> From the Loganaden Velvindron: >>>>> Make dired more sane (and emacslike): >>>>> * Position cursor at first filename after .. >>>>> * Don't reposition cursor on reopening >>>>> * Check for permission before attempting to open directory >>>>> >>>>> I took forever to get this in. Thanks, Logan for being patient! >>>>> == >>>>> >>>>> That should be an access(2) call. >>>>> >>>> >>>> or stat(2) due to tctu. >>> >>> I believe in that case it would be the same, since there is still a >>> window between stat(2)/access(2) and open(2). >> >> I mean, considering he would open/stat/close and open again. > > I didn't actually look at the code; I just noticed the words > permission and access(2) and hit reply :) > > Cheers.
Today is definately not my day, forgot that stat takes a path and not an fd.
