diff options
author | Daniel Caujolle-Bert <f1rmb@users.sourceforge.net> | 2004-03-21 23:04:13 +0000 |
---|---|---|
committer | Daniel Caujolle-Bert <f1rmb@users.sourceforge.net> | 2004-03-21 23:04:13 +0000 |
commit | 24a598c93b5f26b58509b66fc2e9538e87ce1408 (patch) | |
tree | 25f5dbf40b1b434a8d42517c7b631ecfa3c529eb | |
parent | 129fe0acaadf16cc7ff2184c07ab1c073fcd6657 (diff) | |
download | xine-lib-24a598c93b5f26b58509b66fc2e9538e87ce1408.tar.gz xine-lib-24a598c93b5f26b58509b66fc2e9538e87ce1408.tar.bz2 |
memleak
CVS patchset: 6293
CVS date: 2004/03/21 23:04:13
-rw-r--r-- | src/xine-engine/osd.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/xine-engine/osd.c b/src/xine-engine/osd.c index f7cedbf72..62117b6d4 100644 --- a/src/xine-engine/osd.c +++ b/src/xine-engine/osd.c @@ -655,7 +655,7 @@ static int osd_renderer_load_font(osd_renderer_t *this, char *filename) { */ static int osd_renderer_unload_font(osd_renderer_t *this, char *fontname ) { - osd_font_t *font, *last; + osd_font_t *font, *first, *last; osd_object_t *osd; int i, ret = 0; @@ -671,7 +671,7 @@ static int osd_renderer_unload_font(osd_renderer_t *this, char *fontname ) { } last = NULL; - font = this->fonts; + font = first = this->fonts; while( font ) { if ( !strcasecmp(font->name,fontname) ) { @@ -696,6 +696,9 @@ static int osd_renderer_unload_font(osd_renderer_t *this, char *fontname ) { font = font->next; } + if(first) + free(first); + pthread_mutex_unlock (&this->osd_mutex); return ret; } |