diff -urN ooo_DEV300_m84_src.orig/sc/source/ui/vba/vbasheetobjects.cxx ooo_DEV300_m84_src/sc/source/ui/vba/vbasheetobjects.cxx --- ooo_DEV300_m84_src.orig/sc/source/ui/vba/vbasheetobjects.cxx 2010-07-01 09:53:23.000000000 +0200 +++ ooo_DEV300_m84_src/sc/source/ui/vba/vbasheetobjects.cxx 2010-07-01 09:53:45.000000000 +0200 @@ -341,8 +341,8 @@ /* Extract double values from passed Anys (the lclPointsToHmm() helper function will throw a RuntimeException on any error), and convert from points to 1/100 mm. */ - awt::Point aPos( lclPointsToHmm( rLeft ), lclPointsToHmm( rTop ) ); - awt::Size aSize( lclPointsToHmm( rWidth ), lclPointsToHmm( rHeight ) ); + awt::Point aPos( static_cast< sal_Int32 >(lclPointsToHmm( rLeft )), static_cast< sal_Int32 >(lclPointsToHmm( rTop )) ); + awt::Size aSize( static_cast< sal_Int32 >(lclPointsToHmm( rWidth )), static_cast< sal_Int32 >(lclPointsToHmm( rHeight )) ); // TODO: translate coordinates for RTL sheets if( (aPos.X < 0) || (aPos.Y < 0) || (aSize.Width <= 0) || (aSize.Height <= 0) ) throw uno::RuntimeException();