From: <dg...@us...> - 2008-01-13 17:55:58
|
Update of /cvsroot/xine/xine-ui/src/xitk In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv26344/src/xitk Modified Files: osd.c Log Message: Make xine_speeds and xine_status use character arrays so that they end entirely in .rodata. Remove the termination entry and use a size-limited loop instead. Index: osd.c =================================================================== RCS file: /cvsroot/xine/xine-ui/src/xitk/osd.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- osd.c 13 Jan 2008 17:52:33 -0000 1.42 +++ osd.c 13 Jan 2008 17:56:00 -0000 1.43 @@ -86,18 +86,17 @@ }; static const struct xine_status_s { - char *symbol; + char symbol[4]; int status; } xine_status[] = { { "Ø", XINE_STATUS_IDLE }, { "}", XINE_STATUS_STOP }, { ">" , XINE_STATUS_PLAY }, - { "{" , XINE_STATUS_QUIT }, - { NULL, 0 } + { "{" , XINE_STATUS_QUIT } }; static const struct xine_speeds_s { - char *symbol; + char symbol[4]; int speed; } xine_speeds[] = { { "<" , XINE_SPEED_PAUSE }, @@ -105,8 +104,7 @@ { "@>" , XINE_SPEED_SLOW_2 }, { ">" , XINE_SPEED_NORMAL }, { ">$" , XINE_SPEED_FAST_2 }, - { ">$$", XINE_SPEED_FAST_4 }, - { NULL , 0 } + { ">$$", XINE_SPEED_FAST_4 } }; #define BAR_WIDTH 336 @@ -135,7 +133,7 @@ static char *_osd_get_speed_sym(int speed) { int i; - for(i = 0; xine_speeds[i].symbol != NULL; i++) { + for(i = 0; i < sizeof(xine_speeds)/sizeof(xine_speeds[0]); i++) { if(speed == xine_speeds[i].speed) return xine_speeds[i].symbol; } @@ -145,7 +143,7 @@ static char *_osd_get_status_sym(int status) { int i; - for(i = 0; xine_status[i].symbol != NULL; i++) { + for(i = 0; i < sizeof(xine_status)/sizeof(xine_status[0]); i++) { if(status == xine_status[i].status) return xine_status[i].symbol; } |