zsh-workers
 help / color / mirror / code / Atom feed
* Re: PATCH: Memorey leak with PS4 usage.
@ 2000-06-01  6:25 Felix Rosencrantz
  2000-06-01  9:06 ` Peter Stephenson
  0 siblings, 1 reply; 4+ messages in thread
From: Felix Rosencrantz @ 2000-06-01  6:25 UTC (permalink / raw)
  To: zsh-workers

--- Bart Schaefer <schaefer@candle.brasslantern.com> wrote:
> On May 31,  8:27pm, Felix Rosencrantz wrote:
> } Subject: PATCH: Memorey leak with PS4 usage.
> }
> } There seems to be a memory leak issue with the use of promptexpand.
> } I've included a patch for utils.c.
> 
> What leads you to this conclusion?
> 
> dupstring() allocates off zsh's internal heap.  Freeing a pointer off the
> heap is a Bad Thing.  The heap is allocated and freed in large chunks that
> zsh subdivides as necessary.

I think the these lines in promptexpand:
prompt.c:144:        return ztrdup("");
prompt.c:163:   bp =bufline = buf = zcalloc(bufspc = 256);

Are not allocated off the internal heap.

Also, other uses of promptexpand use free to free this space. For example,
in bin_print():
builtin.c:2758   if(ops['P']) {
builtin.c:2759       /*
builtin.c:2760        * promptexpand uses permanent storage: to avoid
builtin.c:2761        * messy memory management, stick it on the heap
builtin.c:2762        * instead.
builtin.c:2763        */
builtin.c:2764        char *str = unmetafy(promptexpand(metafy(args[n], len[n],
builtin.c:2765                               META_NOALLOC), 0, NULL, NULL),
&len[n]);
builtin.c:2766        args[n] = dupstring(str);
builtin.c:2767        free(str);
builtin.c:2768   }

Is this correct? Plus, that comment is unclear to me.  Though code speaks
louder than comments. 

-FR.


__________________________________________________
Do You Yahoo!?
Send instant messages & get email alerts with Yahoo! Messenger.
http://im.yahoo.com/


^ permalink raw reply	[flat|nested] 4+ messages in thread
* PATCH: Memorey leak with PS4 usage.
@ 2000-06-01  3:27 Felix Rosencrantz
  2000-06-01  5:45 ` Bart Schaefer
  0 siblings, 1 reply; 4+ messages in thread
From: Felix Rosencrantz @ 2000-06-01  3:27 UTC (permalink / raw)
  To: zsh-workers

[-- Attachment #1: Type: text/plain, Size: 397 bytes --]

There seems to be a memory leak issue with the use of promptexpand.
I've included a patch for utils.c.

I think there are additional problems with promptexpand's use in subst.c, which
I'll leave for someone who understands the code better.

-FR


__________________________________________________
Do You Yahoo!?
Send instant messages & get email alerts with Yahoo! Messenger.
http://im.yahoo.com/

[-- Attachment #2: patch5.txt --]
[-- Type: text/plain, Size: 271 bytes --]

Index: Src/utils.c
===================================================================
--- zsh/Src/outils.c	Sat May 20 08:56:03 2000
+++ zsh/Src/utils.c	Wed May 31 20:12:20 2000
@@ -807,6 +807,7 @@
 	opts[XTRACE] = t;
 
 	fprintf(xtrerr, "%s", s);
+	free(s);
     }
 }
 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2000-06-01  9:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-06-01  6:25 PATCH: Memorey leak with PS4 usage Felix Rosencrantz
2000-06-01  9:06 ` Peter Stephenson
  -- strict thread matches above, loose matches on Subject: below --
2000-06-01  3:27 Felix Rosencrantz
2000-06-01  5:45 ` Bart Schaefer

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).