      */
     override public function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
     {
+        // TBD (hmuller): Short-circuit if there aren't any rows or columns.
+        
         if (!grid)
             return;
         

        // there's space left over, widen the columns whose GridColumn width 
        // isn't set explicitly, to fill the extra space.
        
        if ((scrollX != 0) || isNaN(width) || (availableWidth <= 1.0) || (flexibleColumnCount == 0))
            return;
        
        const columnWidthDelta:Number = Math.ceil(availableWidth / flexibleColumnCount);
        
        for (columnIndex = firstVisibleColumnIndex; (columnIndex < columnCount) && (availableWidth > 1.0); columnIndex++)
        {
            gridColumn = getGridColumn(columnIndex);
            

    private function getGridColumn(columnIndex:int):GridColumn
    {
        const columns:IList = grid.columns;
        if ((columns == null) || (columnIndex >= columns.length) || (columnIndex < 0))
            return null;
        
        return columns.getItemAt(columnIndex) as GridColumn;
