From 8956af99abae0508a68abcf094ec748eb408dbfe Mon Sep 17 00:00:00 2001 From: Chris Want Date: Sat, 15 Feb 2003 04:18:22 +0000 Subject: gcc 3.2.1 seems to have problems casting a double like 32772.0 to a short, so we cast to an int first, then to a short when a button that modifies a short value is pressed. (Allieviates the bug where the Unified Renderer button modifies the values of a bunch of other buttons). --- source/blender/src/interface.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'source') diff --git a/source/blender/src/interface.c b/source/blender/src/interface.c index 0209607d2e5..55605e9154e 100644 --- a/source/blender/src/interface.c +++ b/source/blender/src/interface.c @@ -3337,8 +3337,15 @@ static void ui_set_but_val(uiBut *but, double value) } else if( but->pointype==CHA ) *((char *)poin)= (char)value; - else if( but->pointype==SHO ) - *((short *)poin)= (short)value; + else if( but->pointype==SHO ) { + /* gcc 3.2.1 seems to have problems + * casting a double like 32772.0 to + * a short so we cast to an int, then + to a short */ + int gcckludge; + gcckludge = (int) value; + *((short *)poin)= (short) gcckludge; + } else if( but->pointype==INT ) *((int *)poin)= (int)value; else if( but->pointype==FLO ) -- cgit v1.2.3