From 9290b2fec018c53346d4c8267bb9b9f4234f7b2b Mon Sep 17 00:00:00 2001 From: skeezix Date: Thu, 15 Apr 2010 16:16:44 -0400 Subject: [PATCH] fix for caching --- minimenu/mmcache.c | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/minimenu/mmcache.c b/minimenu/mmcache.c index bc98c68..4480a12 100644 --- a/minimenu/mmcache.c +++ b/minimenu/mmcache.c @@ -240,29 +240,31 @@ unsigned char cache_icon ( pnd_disco_t *app, unsigned char maxwidth, unsigned ch } // ovr? // if this is a real pnd file (dir-app or pnd-file-app), then try to pull icon from there - if ( app -> object_flags & PND_DISCO_GENERATED ) { + if ( ! iconbuf ) { - // maybe we can discover this single-file and find an icon? - if ( strcasestr ( app -> object_filename, PND_PACKAGE_FILEEXT ) ) { + if ( app -> object_flags & PND_DISCO_GENERATED ) { - // looks like a pnd, now what do we do.. - pnd_box_handle h = pnd_disco_file ( app -> object_path, app -> object_filename ); + // maybe we can discover this single-file and find an icon? + if ( strcasestr ( app -> object_filename, PND_PACKAGE_FILEEXT ) ) { - if ( h ) { - pnd_disco_t *d = pnd_box_get_head ( h ); - iconbuf = pnd_emit_icon_to_buffer ( d, &buflen ); - } + // looks like a pnd, now what do we do.. + pnd_box_handle h = pnd_disco_file ( app -> object_path, app -> object_filename ); - } // filename has .pnd? + if ( h ) { + pnd_disco_t *d = pnd_box_get_head ( h ); + iconbuf = pnd_emit_icon_to_buffer ( d, &buflen ); + } - } else { + } // filename has .pnd? - // pull icon into buffer from .pnd if not already found an icon - if ( ! iconbuf ) { + } else { + + // pull icon into buffer from .pnd if not already found an icon iconbuf = pnd_emit_icon_to_buffer ( app, &buflen ); - } - } // generated? + } // generated? + + } // already got icon? if ( ! iconbuf ) { return ( 0 ); -- 2.39.2