             if (isNaN(gridColumn.width)) // if this column's width wasn't explicitly specified
             {
                 flexibleColumnCount += 1;
-                
-                // Clamp columnWidth to the gridColumn's min,maxWidth
-                
-                var minColumnWidth:Number = gridColumn.minWidth;
-                var maxColumnWidth:Number = gridColumn.maxWidth;
-                if (!isNaN(minColumnWidth))
-                    columnWidth = Math.max(columnWidth, minColumnWidth);
-                if (!isNaN(maxColumnWidth))
-                    columnWidth = Math.min(columnWidth, maxColumnWidth);
+                columnWidth = clampColumnWidth(columnWidth, gridColumn);
             }
             else
                 columnWidth = gridColumn.width;

            {
                var oldColumnWidth:Number = gridDimensions.getColumnWidth(columnIndex);
                columnWidth = oldColumnWidth + Math.min(availableWidth, columnWidthDelta);
                
                minColumnWidth = gridColumn.minWidth;
                maxColumnWidth = gridColumn.maxWidth;
                if (!isNaN(minColumnWidth))
                    columnWidth = Math.max(columnWidth, minColumnWidth);
                if (!isNaN(maxColumnWidth))
                    columnWidth = Math.min(columnWidth, maxColumnWidth);
                
                gridDimensions.setColumnWidth(columnIndex, columnWidth);  // store the column width
                availableWidth -= (columnWidth - oldColumnWidth);
            }

	//  Updating the GridDimensions' typicalCell sizes and columnWidths
	//
	//-------------------------------------------------------------------------- 
    
    /**
     *  @private
     *  Return width clamped to the column's minWidth and maxWidth properties.
     */
    private static function clampColumnWidth(width:Number, column:GridColumn):Number
    {
       const minColumnWidth:Number = column.minWidth;
       const maxColumnWidth:Number = column.maxWidth;
       
       if (!isNaN(minColumnWidth))
           width = Math.max(width, minColumnWidth);
       if (!isNaN(maxColumnWidth))
           width = Math.min(width, maxColumnWidth);
       
       return width;
    }
	
    /**
	 *  @private
