Fix crash when painting empty tables (#17952)
This commit is contained in:
parent
4aa4c965cc
commit
72c459bcfc
@ -1119,8 +1119,10 @@ class RenderTable extends RenderBox {
|
|||||||
void paint(PaintingContext context, Offset offset) {
|
void paint(PaintingContext context, Offset offset) {
|
||||||
assert(_children.length == rows * columns);
|
assert(_children.length == rows * columns);
|
||||||
if (rows * columns == 0) {
|
if (rows * columns == 0) {
|
||||||
final Rect borderRect = new Rect.fromLTWH(offset.dx, offset.dy, size.width, 0.0);
|
if (border != null) {
|
||||||
border.paint(context.canvas, borderRect, rows: const <double>[], columns: const <double>[]);
|
final Rect borderRect = new Rect.fromLTWH(offset.dx, offset.dy, size.width, 0.0);
|
||||||
|
border.paint(context.canvas, borderRect, rows: const <double>[], columns: const <double>[]);
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
assert(_rowTops.length == rows + 1);
|
assert(_rowTops.length == rows + 1);
|
||||||
|
@ -19,6 +19,14 @@ class TestStatefulWidgetState extends State<TestStatefulWidget> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
|
testWidgets('Table widget - empty', (WidgetTester tester) async {
|
||||||
|
await tester.pumpWidget(
|
||||||
|
new Directionality(
|
||||||
|
textDirection: TextDirection.ltr,
|
||||||
|
child: new Table(),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
});
|
||||||
testWidgets('Table widget - control test', (WidgetTester tester) async {
|
testWidgets('Table widget - control test', (WidgetTester tester) async {
|
||||||
Future<Null> run(TextDirection textDirection) async {
|
Future<Null> run(TextDirection textDirection) async {
|
||||||
await tester.pumpWidget(
|
await tester.pumpWidget(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user