From b20ed3c1f5774fd333e889c72d2dbdfdeae02195 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Mon, 30 Apr 2012 13:03:00 +0200 Subject: [PATCH] mothra/libpanel: fix memory leak in pledit --- sys/src/cmd/mothra/libpanel/edit.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/src/cmd/mothra/libpanel/edit.c b/sys/src/cmd/mothra/libpanel/edit.c index 0dd26c4d8..afb52f776 100644 --- a/sys/src/cmd/mothra/libpanel/edit.c +++ b/sys/src/cmd/mothra/libpanel/edit.c @@ -209,6 +209,12 @@ Point pl_getsizeedit(Panel *p, Point children){ void pl_childspaceedit(Panel *g, Point *ul, Point *size){ USED(g, ul, size); } +void pl_freeedit(Panel *p){ + Edit *ep; + ep=p->data; + if(ep->t!=nil) twfree(ep->t); + ep->t=0; +} void plinitedit(Panel *v, int flags, Point minsize, Rune *text, int ntext, void (*hit)(Panel *)){ Edit *ep; ep=v->data; @@ -219,6 +225,7 @@ void plinitedit(Panel *v, int flags, Point minsize, Rune *text, int ntext, void v->type=pl_typeedit; v->getsize=pl_getsizeedit; v->childspace=pl_childspaceedit; + v->free=pl_freeedit; v->kind="edit"; ep->hit=hit; ep->minsize=minsize;