Since we only stretch when child->style()->logicalHeight().isAuto(), there is no need to compute the logical height. We just need to constain by min-max values. See bug 94604, comment 2 for details
Created attachment 160173 [details] Patch Initial patch for review
Comment on attachment 160173 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=160173&action=review > Source/WebCore/rendering/RenderBox.cpp:443 > if (maxH == -1) > - maxH = result; > - result = min(maxH, result); > - result = max(minH, result); > - return result; > + maxH = logicalHeight; > + logicalHeight = min(maxH, logicalHeight); Nit: This could just be: if (maxH != -1) logicalHeight = min(maxH, logicalHeight);
Created attachment 160205 [details] Patch I simplified it further -- the entire maxH block can be skipped if style()->logicalMaxHeight().isUndefined()
Comment on attachment 160205 [details] Patch Clearing flags on attachment: 160205 Committed r126468: <http://trac.webkit.org/changeset/126468>
All reviewed patches have been landed. Closing bug.