From 7d5c275cb8df79637212dc89ab980dabfc39a6df Mon Sep 17 00:00:00 2001 From: reinelt Date: Thu, 11 Mar 2004 06:39:59 +0000 Subject: [lcd4linux @ 2004-03-11 06:39:58 by reinelt] big patch from Martin: - reuse filehandles - memory leaks fixed - earlier busy-flag checking with HD44780 - reuse memory for strings in RESULT and hash - netdev_fast to wavid time-consuming regex git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@393 3ae390bd-cb1e-0410-b409-cd5a39f66f1f --- widget_bar.c | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'widget_bar.c') diff --git a/widget_bar.c b/widget_bar.c index a3d4435..60d2de9 100644 --- a/widget_bar.c +++ b/widget_bar.c @@ -1,4 +1,4 @@ -/* $Id: widget_bar.c,v 1.9 2004/03/06 20:31:16 reinelt Exp $ +/* $Id: widget_bar.c,v 1.10 2004/03/11 06:39:59 reinelt Exp $ * * bar widget handling * @@ -21,6 +21,14 @@ * * * $Log: widget_bar.c,v $ + * Revision 1.10 2004/03/11 06:39:59 reinelt + * big patch from Martin: + * - reuse filehandles + * - memory leaks fixed + * - earlier busy-flag checking with HD44780 + * - reuse memory for strings in RESULT and hash + * - netdev_fast to wavid time-consuming regex + * * Revision 1.9 2004/03/06 20:31:16 reinelt * Complete rewrite of the evaluator to get rid of the code * from mark Morley (because of license issues). @@ -93,7 +101,7 @@ void widget_bar_update (void *Self) { WIDGET *W = (WIDGET*)Self; WIDGET_BAR *Bar = W->data; - RESULT result = {0, 0.0, NULL}; + RESULT result = {0, 0, 0, NULL}; double val1, val2; double min, max; @@ -226,12 +234,21 @@ int widget_bar_init (WIDGET *Self) } -int widget_bar_quit (WIDGET *Self) { +int widget_bar_quit (WIDGET *Self) +{ if (Self ) { - if (Self->data) free(Self->data); - Self->data=NULL; + if (Self->data) { + WIDGET_BAR *Bar = Self->data; + DelTree(Bar->tree1); + DelTree(Bar->tree2); + DelTree(Bar->tree_min); + DelTree(Bar->tree_max); + free(Self->data); + } + Self->data=NULL; } + return 0; } -- cgit v1.2.3