Skip to content

Getting '<Unexpected Null Value>' using with Flutter Web #300

@jlubeck

Description

@jlubeck

Just by using this simple script:

import 'package:flutter/material.dart';
import 'package:flutter_html/flutter_html.dart';

class TestScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Html(
        data: '<p>Test</p>',
      ),
    );
  }
}

And trying it on web I get the following error:

══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
The following NoSuchMethodError was thrown during performLayout():
'<Unexpected Null Value>'
method not found
Receiver: null
Arguments: []

The relevant error-causing widget was:
  Text
  file:///Users/jan/.pub-cache/hosted/pub.dartlang.org/flutter_html-1.0.0/lib/html_parser.dart:719:19

When the exception was thrown, this was the stack:
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 216:49      throw_
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 58:3        throwNullValueError
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 488:39  _notNull
packages/flutter/src/widgets/widget_span.dart 108:37                              build
packages/flutter/src/painting/text_span.dart 211:14                               build
packages/flutter/src/painting/text_span.dart 211:14                               build
packages/flutter/src/painting/text_painter.dart 558:13                            layout
packages/flutter/src/rendering/paragraph.dart 490:18                              [_layoutText]
packages/flutter/src/rendering/paragraph.dart 513:5                               [_layoutTextWithConstraints]
packages/flutter/src/rendering/paragraph.dart 581:5                               performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 266:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/shifted_box.dart 394:13                            performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/shifted_box.dart 207:11                            performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/paragraph.dart 530:12                              [_layoutChildren]
packages/flutter/src/rendering/paragraph.dart 580:5                               performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 266:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/shifted_box.dart 394:13                            performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/paragraph.dart 530:12                              [_layoutChildren]
packages/flutter/src/rendering/paragraph.dart 580:5                               performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 266:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 266:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/custom_layout.dart 171:10                          layoutChild
packages/flutter/src/material/scaffold.dart 480:7                                 performLayout
packages/flutter/src/rendering/custom_layout.dart 240:7                           [_callPerformLayout]
packages/flutter/src/rendering/custom_layout.dart 399:14                          performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/proxy_box.dart 1265:11                             performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/proxy_box.dart 3242:13                             performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/widgets/overlay.dart 700:14                                  performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/proxy_box.dart 111:13                              performLayout
packages/flutter/src/rendering/object.dart 1767:7                                 layout
packages/flutter/src/rendering/view.dart 167:48                                   performLayout
packages/flutter/src/rendering/object.dart 1630:7                                 [_layoutWithoutResize]
packages/flutter/src/rendering/object.dart 887:17                                 flushLayout
packages/flutter/src/rendering/binding.dart 402:19                                drawFrame
packages/flutter/src/widgets/binding.dart 865:13                                  drawFrame
packages/flutter/src/rendering/binding.dart 284:5                                 [_handlePersistentFrameCallback]
packages/flutter/src/scheduler/binding.dart 1074:15                               [_invokeFrameCallback]
packages/flutter/src/scheduler/binding.dart 1013:9                                handleDrawFrame
packages/flutter/src/scheduler/binding.dart 822:7                                 <fn>
dart-sdk/lib/_internal/js_dev_runtime/private/isolate_helper.dart 50:19           internalCallback

The following RenderObject was being processed when the exception was fired: RenderParagraph#ab787 relayoutBoundary=up12 NEEDS-LAYOUT NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE:
  creator: RichText ← Text ← SizedBox ← StyledText ← Align ← DecoratedBox ← Padding ← Container ←
    ContainerSpan ← RichText ← Text ← SizedBox ← ⋯
  parentData: <none> (can use size)
  constraints: BoxConstraints(w=1645.0, 0.0<=h<=Infinity)
  size: MISSING
  textAlign: start
  textDirection: ltr
  softWrap: wrapping at box width
  overflow: clip
  locale: en_US
  maxLines: unlimited
This RenderObject had the following descendants (showing up to depth 5):
    text: TextSpan
      TextSpan
        WidgetSpan#ec776
════════════════════════════════════════════════════════════════════════════════════════════════════
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: Assertion failed: file:///Users/jan/flutter/packages/flutter/lib/src/rendering/box.dart:1694:12
Another exception was thrown: NoSuchMethodError: '<Unexpected Null Value>'

This is my flutter doctor

[✓] Flutter (Channel beta, 1.18.0-11.1.pre, on Mac OS X 10.15.4 19E287, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
[✓] Chrome - develop for the web
[✓] Android Studio (version 3.6)
[!] VS Code (version 1.45.1)
    ✗ Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[✓] Connected device (3 available)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions