From 9f59e7391b79afd6c25fe37d52e637b7240e0f20 Mon Sep 17 00:00:00 2001 From: skeezix Date: Thu, 10 Feb 2011 15:30:39 -0500 Subject: [PATCH] mmenu fix: don't allow blank cat names to be created; also, don't crash when subcat has same name as parent cat. --- minimenu/mmcat.c | 1 + minimenu/mmui.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/minimenu/mmcat.c b/minimenu/mmcat.c index a8c40a6..7dbfa54 100644 --- a/minimenu/mmcat.c +++ b/minimenu/mmcat.c @@ -785,6 +785,7 @@ void category_publish ( unsigned int filter_mask, char *param ) { } else if ( filter_mask == CFBYNAME ) { char *foo = strchr ( param, '*' ) + 1; if ( strncasecmp ( iter -> catname, param, strlen ( iter -> catname ) ) == 0 && + iter -> parent_catname && strcasecmp ( iter -> parent_catname, foo ) == 0 ) { interested = 1; diff --git a/minimenu/mmui.c b/minimenu/mmui.c index 3a0c175..193dceb 100644 --- a/minimenu/mmui.c +++ b/minimenu/mmui.c @@ -3779,7 +3779,11 @@ unsigned char ui_menu_get_text_line ( char *title, char *footer, char *initialva r_buffer [ 0 ] = '\0'; // truncate! } else if ( event.key.keysym.sym == SDLK_RETURN || event.key.keysym.sym == SDLK_END ) { // return, or "B" - return ( 1 ); + // on Enter/Return or B, if the buffer has 1 or more chars, we return it as valid.. otherwise, invalid. + if ( strlen ( r_buffer ) > 0 ) { + return ( 1 ); + } + return ( 0 ); } else if ( event.key.keysym.sym == SDLK_LSHIFT || event.key.keysym.sym == SDLK_RSHIFT ) { shifted = 1; -- 2.39.5