mmenu fix: don't allow blank cat names to be created; also, don't crash when subcat...
authorskeezix <skeezix@flotsam-vm.(none)>
Thu, 10 Feb 2011 20:30:39 +0000 (15:30 -0500)
committerskeezix <skeezix@flotsam-vm.(none)>
Thu, 10 Feb 2011 20:30:39 +0000 (15:30 -0500)
minimenu/mmcat.c
minimenu/mmui.c

index a8c40a6..7dbfa54 100644 (file)
@@ -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;
index 3a0c175..193dceb 100644 (file)
@@ -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;