Re: cvs commit: src/usr.bin/mkfifo mkfifo.c

看板DFBSD_commit作者時間21年前 (2005/03/03 04:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串7/10 (看更多)
On Wed(02)/Mar/05 - , Chris Pressey wrote: > On Wed, 2 Mar 2005 11:07:06 -0800 (PST) > Matthew Dillon <dillon@apollo.backplane.com> wrote: > > > > > : > > :liamfoy 2005/03/02 09:32:06 PST > > : > > :DragonFly src repository > > : > > : Modified files: > > : usr.bin/mkfifo mkfifo.c > > : Log: > > : - Make sure we free() 'modep' after setmode() > > : - Add stdlib.h for both free() and exit() > > : > > : Revision Changes Path > > : 1.5 +3 -1 src/usr.bin/mkfifo/mkfifo.c > > : > > : > > :http://www.dragonflybsd.org/cvsweb/src/usr.bin/mkfifo/mkfifo.c.diff? > > r1=1.4&r2=1.5&f=u > > > > It's about to exit, there's no reason to free(modep), it just > > wastes cycles unnecessarily. > > There's one reason: setting a good example. If someone, say, copies > this code into an unbounded loop in their own program, they'll leak > memory if they don't free modep. Not that programmers should blindly > copy example code without reading the appropriate manual pages, every > little bit helps. I actually agree here. I would much prefere to see free(). Also, wouldnt exit() use the cycles that free() would anyway? If this view is taken, I can show you 'MUCH' more code that does exactly this. (Example: ln). This is why I thought it was the accepted practice. > > And considering it's only one structure being freed (and not, say, a > complicated cyclic graph-like structure), the waste of cycles involved > in freeing it is pretty minor. > > Just my 2c. > > -Chris -- - Liam J. Foy <liamfoy@sepulcrum.org> http://www.bsd-systems.co.uk
文章代碼(AID): #129Xk600 (DFBSD_commit)
討論串 (同標題文章)
文章代碼(AID): #129Xk600 (DFBSD_commit)