From: Ash Tyndall Date: Sat, 8 Oct 2011 06:41:20 +0000 (+0800) Subject: (no commit message) X-Git-Url: https://git.ucc.asn.au/?a=commitdiff_plain;h=4c962c53434d7aebc6551b9ef8615a0cfe5e4eea;hp=a4f6bea87a20c5da469fb115a8fb0db20c5ffb18;p=atyndall%2Fcits2231.git --- diff --git a/scene.c b/scene.c index a4b70d6..bc91f1e 100644 --- a/scene.c +++ b/scene.c @@ -246,8 +246,9 @@ void processLightEvents(int id) { } -int makeSubmenuFromArray( const char *menuEntries[], void *callback ) { - int menuEntriesSize = sizeof(menuEntries) / sizeof(menuEntries[0]); +int makeSubmenuFromArray( const char *menuEntries[], unsigned int menuEntriesSize, void *callback ) { + if ( menuEntriesSize == 0 ) return -1; + int menuNumber = menuEntriesSize / 10 + 1; int submenuObjects[menuNumber-1]; @@ -295,7 +296,8 @@ void makeMenu() { glutAddMenuEntry("R/G/B/All Light 2", LIGHT_RGBALL_LIGHT_2); // Construct add object submenus - int addObjectMenu = makeSubmenuFromArray( objectMenuEntries, processObjectEvents ); + int objectMenuEntriesSize = sizeof(objectMenuEntries) / sizeof(objectMenuEntries[0]); + int addObjectMenu = makeSubmenuFromArray( objectMenuEntries, objectMenuEntriesSize, processObjectEvents ); // Construct texture/ground texture submenus /* int textureMenuEntries = sizeof(textureMenuEntries) / sizeof(textureMenuEntries[0]);