summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2012-04-30 13:03:00 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2012-04-30 13:03:00 +0200
commitb20ed3c1f5774fd333e889c72d2dbdfdeae02195 (patch)
treea65e913a43ec04e6121e061d33e97a1f6d9e3b6a
parent748bdc13b2697e3e86c5955d2eb39e1f7c40f93e (diff)
downloadplan9front-b20ed3c1f5774fd333e889c72d2dbdfdeae02195.tar.xz
mothra/libpanel: fix memory leak in pledit
-rw-r--r--sys/src/cmd/mothra/libpanel/edit.c7
1 files changed, 7 insertions, 0 deletions
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;