         {
             // We are already taking scale into account from the transform,
             // so adjust here since IUIComponent mixes it with width/height
-            width /= obj.scaleX;
+            width = (obj.scaleX == 0) ? 0 : width / obj.scaleX;
         }
 
         if (transformMatrix)

        {
            // We are already taking scale into account from the transform,
            // so adjust here since IUIComponent mixes it with width/height
            maxHeight /= obj.scaleY;
        }
        return maxHeight;
    }

    {
        if (transformMatrix)
        {
            //race("Setting actual position to " + x + "," + y);
            //race("\tcurrent x/y is " + obj.x + "," + obj.y); 
            //race("\tcurrent actual position is " + actualPosition.x + "," + actualPosition.y);
            x = x - getLayoutBoundsX(obj,transformMatrix) + obj.x;
            y = y - getLayoutBoundsY(obj,transformMatrix) + obj.y;
        }
