Open
Bug 416639
Opened 17 years ago
Updated 3 years ago
"ASSERTION: Table width is less than the sum of its columns' min widths" with large cellspacing, position:absolute
Categories
(Core :: Layout: Tables, defect)
Tracking
()
People
(Reporter: jruderman, Unassigned)
References
Details
(Keywords: assertion, testcase)
Attachments
(2 files)
###!!! ASSERTION: Table width is less than the sum of its columns' min widths: '!(aWidthType == BTLS_FINAL_WIDTH && aWidth < guess_min)', file /Users/jruderman/trunk/mozilla/layout/tables/BasicTableLayoutStrategy.cpp, line 764
###!!! ASSERTION: didn't subtract all that we added: '(space == 0 || space == nscoord_MAX) && ((l2t == FLEX_PCT_LARGE) ? (-0.001f < basis.f && basis.f < 0.001f) : (basis.c == 0 || basis.c == nscoord_MAX))', file /Users/jruderman/trunk/mozilla/layout/tables/BasicTableLayoutStrategy.cpp, line 991
###!!! ASSERTION: Can't solve for both left and right: 'NS_AUTOOFFSET != kidReflowState.mComputedOffsets.right', file /Users/jruderman/trunk/mozilla/layout/generic/nsAbsoluteContainingBlock.cpp, line 449
The first two assertions also appear in bug 413091, but the third one doesn't. The testcases don't seem similar.
Reporter | ||
Comment 1•16 years ago
|
||
This bug still exists even now that bug 413091 is fixed.
Bug 413091 is about small negative numbers under a real case scenario, this bug is about very large cellspacing driving basic table layout beyond ns_unconstrained_size. Encapsulating the corresponding calls just moves the assert from one place to another place. The only sensible solution would be floating coordinates.
Reporter | ||
Comment 3•10 years ago
|
||
###!!! ASSERTION: Table inline-size is less than the sum of its columns' min inline-sizes: '!(aISizeType == BTLS_FINAL_ISIZE && aISize < guess_min)', file layout/tables/BasicTableLayoutStrategy.cpp, line 827
Comment 4•8 years ago
|
||
I have seen this error pop up suddenly in a late submission of C-C TB tryserver test job for Windows.
https://treeherder.mozilla.org/#/jobs?repo=try-comm-central&revision=42b36ccdf93c84d56bbf21b9b50c80acf34aa12b
See the Windows 7 Debug Test:
++DOMWINDOW == 16 (145CF400) [pid = 912] [serial = 16] [outer = 14476800]
10:40:49 INFO - ++DOMWINDOW == 17 (13E04000) [pid = 912] [serial = 17] [outer = 14473C00]
10:40:59 INFO - Warning: Warning: Using guessed timezone
10:40:59 INFO - America/Los_Angeles (UTC-0800/-0700).
10:40:59 INFO - This ZoneInfo timezone seems to match the operating system timezone this year.
10:40:59 INFO - This ZoneInfo timezone was chosen based on the operating system timezone
10:40:59 INFO - identifier "Pacific Standard Time".
10:41:00 INFO - [912] WARNING: file c:/builds/moz2_slave/tb-try-c-cen-w32-d-00000000000/build/mozilla/ipc/chromium/src/base/message_loop.cc, line 280
10:41:00 INFO - [912] ###!!! ASSERTION: Table inline-size is less than the sum of its columns' min inline-sizes: '!(aISizeType == BTLS_FINAL_ISIZE && aISize < guess_min)', file c:/builds/moz2_slave/tb-try-c-cen-w32-d-00000000000/build/mozilla/layout/tables/BasicTableLayoutStrategy.cpp, line 811
10:41:00 INFO - [912] ###!!! ASSERTION: didn't subtract all that we added: '(space == 0 || space == nscoord_MAX) && ((l2t == FLEX_PCT_LARGE) ? (-0.001f < basis.f && basis.f < 0.001f) : (basis.c == 0 || basis.c == nscoord_MAX))', file c:/builds/moz2_slave/tb-try-c-cen-w32-d-00000000000/build/mozilla/layout/tables/BasicTableLayoutStrategy.cpp, line 1058
10:41:00 INFO - [912] ###!!! ASSERTION: Table inline-size is less than the sum of its columns' min inline-sizes: '!(aISizeType == BTLS_FINAL_ISIZE && aISize < guess_min)', file c:/builds/moz2_slave/tb-try-c-cen-w32-d-00000000000/build/mozilla/layout/tables/BasicTableLayoutStrategy.cpp, line 811
10:41:00 INFO - [912] ###!!! ASSERTION: didn't subtract all that we added: '(space == 0 || space == nscoord_MAX) && ((l2t == FLEX_PCT_LARGE) ? (-0.001f < basis.f && basis.f < 0.001f) : (basis.c == 0 || basis.c == nscoord_MAX))', file c:/builds/moz2_slave/tb-try-c-cen-w32-d-00000000000/build/mozilla/layout/tables/BasicTableLayoutStrategy.cpp, line 1058
10:41:00 INFO - ++DOMWINDOW == 18 (182B8C00) [pid = 912] [serial = 18] [outer = 10127C00]
10:41:00 INFO - ++DOMWINDOW == 19 (182BA800) [pid = 912] [serial = 19] [outer = 10128400]
10:41:00 INFO - ++DOMWINDOW == 20 (182BBC00) [pid = 912] [serial = 20] [outer = 10128C00]
Since this appears only in Windows DEBUG build,
and linux64 debug and OSX debug build don't show it, I suspect it is a C compiler issue on Windows. Maybe it is optimizing the floating operation in a manner that the basis.f under Windows 7 debug build is calculated slightly differently from the value(s) on debug build on other platforms.
Comment 5•8 years ago
|
||
I have seen this in other people's windows 7 debug test jobs. So it is NOT due to my patches :-)
E.g.: https://treeherder.mozilla.org/#/jobs?repo=comm-central&revision=ca379f40ef826555e7da4988f56205a117f30542
Comment 6•8 years ago
|
||
Testcase 1 still hits:
ASSERTION: Can't solve for both start and end: 'NS_AUTOOFFSET != aOffsets->IEnd(outerWM)', file z:/build/build/src/layout/generic/nsAbsoluteContainingBlock.cpp, line 572
Testcase 2 still hits:
ASSERTION: Table inline-size is less than the sum of its columns' min inline-sizes: '!(aISizeType == BTLS_FINAL_ISIZE && aISize < guess_min)', file z:/build/build/src/layout/tables/BasicTableLayoutStrategy.cpp, line 811
ASSERTION: didn't subtract all that we added: '(space == 0 || space == nscoord_MAX) && ((l2t == FLEX_PCT_LARGE) ? (-0.001f < basis.f && basis.f < 0.001f) : (basis.c == 0 || basis.c == nscoord_MAX))', file z:/build/build/src/layout/tables/BasicTableLayoutStrategy.cpp, line 1058
Has Regression Range: --- → no
status-firefox56:
--- → wontfix
status-firefox57:
--- → wontfix
status-firefox58:
--- → fix-optional
status-firefox-esr52:
--- → wontfix
Comment 7•7 years ago
|
||
status-firefox59:
--- → ?
Updated•3 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•