diff --git a/indra/llui/lllayoutstack.cpp b/indra/llui/lllayoutstack.cpp
index b67030dc34eafe0bfea8ebb54da9e335e9035f7b..a1e8eebb47a1b4dca0fba7b036f532d1bec38561 100644
--- a/indra/llui/lllayoutstack.cpp
+++ b/indra/llui/lllayoutstack.cpp
@@ -116,9 +116,9 @@ F32 LLLayoutPanel::getVisibleAmount() const
 
 S32 LLLayoutPanel::getLayoutDim() const
 {
-	return llround((mOrientation == LLLayoutStack::HORIZONTAL)
+	return llround((F32)((mOrientation == LLLayoutStack::HORIZONTAL)
 					? getRect().getWidth()
-					: getRect().getHeight());
+					: getRect().getHeight()));
 }
  
 S32 LLLayoutPanel::getVisibleDim() const
@@ -132,9 +132,9 @@ S32 LLLayoutPanel::getVisibleDim() const
 void LLLayoutPanel::setOrientation( LLLayoutStack::ELayoutOrientation orientation )
 {
 	mOrientation = orientation;
-	S32 layout_dim = llround((mOrientation == LLLayoutStack::HORIZONTAL)
+	S32 layout_dim = llround((F32)((mOrientation == LLLayoutStack::HORIZONTAL)
 		? getRect().getWidth()
-		: getRect().getHeight());
+		: getRect().getHeight()));
 
 	if (mMinDim == -1)
 	{