/****************************************************************************
- * Copyright (c) 1998-2004,2005 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include "menu.priv.h"
-MODULE_ID("$Id: m_driver.c,v 1.24 2005/04/09 20:40:25 tom Exp $")
+MODULE_ID("$Id: m_driver.c,v 1.28 2009/02/28 21:02:46 juergen Exp $")
/* Macros */
{
while (*string && *part)
{
- if (toupper(*string++) != toupper(*part))
+ if (toupper(UChar(*string++)) != toupper(UChar(*part)))
break;
part++;
}
if (++idx >= menu->nitems)
idx = 0;
}
- if (Is_Sub_String((menu->opt & O_IGNORECASE) != 0,
+ if (Is_Sub_String((bool)((menu->opt & O_IGNORECASE) != 0),
menu->pattern,
menu->items[idx]->name.str)
)
/*---------------------------------------------------------------------------
| Facility : libnmenu
-| Function : int menu_driver(MENU *menu, int c)
+| Function : int menu_driver(MENU* menu, int c)
|
| Description : Central dispatcher for the menu. Translates the logical
| request 'c' into a menu action.
else
{
my_top_row += rdiff;
- while (rdiff-- > 0 && item != (ITEM *) 0)
+ while (rdiff-- > 0 && item != 0 && item->down != 0)
item = item->down;
}
break;
else
{
my_top_row -= rdiff;
- while (rdiff-- && item != (ITEM *) 0)
+ while (rdiff-- > 0 && item != 0 && item->up != 0)
item = item->up;
}
break;