Negative spanner margin may increase available size for columns.

We failed to calculate the stretched nested column block-size correctly,
because we didn't take negative margins from a preceding column spanner
into account. A spanner in a nested fragmentation context with a
negative margin may increase the space available for the columns that
follow. Just set the new size to infinity, and let the clamping code
right after do its job.

Bug: 1321365
Change-Id: Ia952ea6efddbaef18ed04f842eb54026dbd09c19
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3714118
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1016234}
diff --git a/css/css-multicol/crashtests/nested-spanner-with-negative-margin.html b/css/css-multicol/crashtests/nested-spanner-with-negative-margin.html
new file mode 100644
index 0000000..3a9b2e3
--- /dev/null
+++ b/css/css-multicol/crashtests/nested-spanner-with-negative-margin.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=1321365">
+<div style="columns:2; column-fill:auto; height:20px;">
+  <div style="height:20px;"></div>
+  <div style="columns:1;">
+    <div style="column-span:all; margin-bottom:-3px;"></div>
+    <div style="height:10px;"></div>
+  </div>
+</div>