aboutsummaryrefslogtreecommitdiffstats
path: root/widget.c
diff options
context:
space:
mode:
authorreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2004-03-03 03:47:04 +0000
committerreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2004-03-03 03:47:04 +0000
commit9ef4282e9e32e857f4d0cac9df6d58f2cba159f4 (patch)
tree723676ea31fe0615b4d0caca1491e5a21fe85c7a /widget.c
parentd0b39b590e56b191394cfcb6b8690de0fbd87957 (diff)
downloadlcd4linux-9ef4282e9e32e857f4d0cac9df6d58f2cba159f4.tar.gz
[lcd4linux @ 2004-03-03 03:47:04 by reinelt]
big patch from Martin Hejl: - use qprintf() where appropriate - save CPU cycles on gettimeofday() - add quit() functions to free allocated memory - fixed lots of memory leaks git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@384 3ae390bd-cb1e-0410-b409-cd5a39f66f1f
Diffstat (limited to 'widget.c')
-rw-r--r--widget.c23
1 files changed, 21 insertions, 2 deletions
diff --git a/widget.c b/widget.c
index e7ae1d3..2eaf240 100644
--- a/widget.c
+++ b/widget.c
@@ -1,4 +1,4 @@
-/* $Id: widget.c,v 1.12 2004/02/18 06:39:20 reinelt Exp $
+/* $Id: widget.c,v 1.13 2004/03/03 03:47:04 reinelt Exp $
*
* generic widget handling
*
@@ -21,6 +21,13 @@
*
*
* $Log: widget.c,v $
+ * Revision 1.13 2004/03/03 03:47:04 reinelt
+ * big patch from Martin Hejl:
+ * - use qprintf() where appropriate
+ * - save CPU cycles on gettimeofday()
+ * - add quit() functions to free allocated memory
+ * - fixed lots of memory leaks
+ *
* Revision 1.12 2004/02/18 06:39:20 reinelt
* T6963 driver for graphic displays finished
*
@@ -129,6 +136,18 @@ int widget_register (WIDGET_CLASS *widget)
return 0;
}
+void widget_unregister(void) {
+ int i;
+ for (i=0;i<nWidgets;i++) {
+ Widgets[i].class->quit(&(Widgets[i]));
+ }
+ free(Widgets);
+
+ free(Classes);
+
+ nWidgets=0;
+ nClasses=0;
+}
int widget_add (char *name, int row, int col)
{
@@ -152,7 +171,7 @@ int widget_add (char *name, int row, int col)
if (class) free (class);
return -1;
}
-
+ free(section);
// lookup widget class
Class=NULL;
for (i=0; i<nClasses; i++) {