Flutter 'owner!._debugCurrentBuildTarget == this': is not true. #87

14,267

Solution 1

I had the same issue and the problem was I had called the class inside the same class. See the body: below. Replacing it with another widget fixed the issue.

class DicePage extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return MaterialApp(
                   home: Scaffold(
                   backgroundColor: Colors.red,
                   appBar: AppBar(
                             title: Text('Dicee'),
                             backgroundColor: Colors.red,
                           ),
                    body: DicePage(),
      ),
    );
  }
}

Solution 2

I just had a similiar error:

════════ Exception caught by widgets library ═══════════════════════════════════
The following StackOverflowError was thrown building Container:
Stack Overflow

The relevant error-causing widget was
Container
lib/widgets/profile_wiget.dart:9
When the exception was thrown, this was the stack
#0      new _HashMap (dart:collection-patch/collection_patch.dart)
#1      new HashMap (dart:collection-patch/collection_patch.dart:33:22)
#2      RegExp._cache (dart:core-patch/regexp_patch.dart:109:11)
#3      RegExp._cache (dart:core-patch/regexp_patch.dart)
#4      new RegExp (dart:core-patch/regexp_patch.dart:17:31)
...
════════════════════════════════════════════════════════════════════════════════

════════ Exception caught by widgets library ═══════════════════════════════════
'package:flutter/src/widgets/framework.dart': Failed assertion: line 4371 pos 14: 'owner!._debugCurrentBuildTarget == this': is not true.
The relevant error-causing widget was
ProfileWidget
lib/widgets/profile_wiget.dart:10
════════════════════════════════════════════════════════════════════════════════

════════ Exception caught by widgets library ═══════════════════════════════════
'package:flutter/src/widgets/framework.dart': Failed assertion: line 4371 pos 14: 'owner!._debugCurrentBuildTarget == this': is not true.
The relevant error-causing widget was
Container
lib/widgets/profile_wiget.dart:9
════════════════════════════════════════════════════════════════════════════════

It might be another reason since I got a stackoverflow, but my answer will hopefully help others who search this error message.
My problem was that I made a widget returning an instance of itself (I named two classes the same):

class ProfileWidget extends StatelessWidget {
  final Profile profile = Profile(name: 'Someone');
  @override
  Widget build(BuildContext context) {
    return Container(
      child: (profile.isAnon) ? AnonProfileWidget() : ProfileWidget(), 
    );
  }
}

I solved it by simply renaming one class.

Share:
14,267
Bharat Chhabra
Author by

Bharat Chhabra

Updated on December 24, 2022

Comments

  • Bharat Chhabra
    Bharat Chhabra over 1 year

    I am getting the error when I try to load the pdf from url. It shows the number of pages of pdf but then it crashes.

    Using plugin - https://pub.dev/packages/advance_pdf_viewer

    ════════════════════════════════════════════════════════════════════════════════════════════════════
    I/flutter (28488): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
    I/flutter (28488): The following assertion was thrown while rebuilding dirty elements:
    I/flutter (28488): 'package:flutter/src/widgets/framework.dart': Failed assertion: line 4371 pos 14:
    I/flutter (28488): 'owner!._debugCurrentBuildTarget == this': is not true.
    I/flutter (28488):
    I/flutter (28488): Either the assertion indicates an error in the framework itself, or we should provide substantially
    I/flutter (28488): more information in this error message to help you determine and fix the underlying cause.
    I/flutter (28488): In either case, please report this assertion by filing a bug on GitHub:
    I/flutter (28488):   https://github.com/flutter/flutter/issues/new?template=BUG.md
    I/flutter (28488):
    I/flutter (28488): The relevant error-causing widget was:
    I/flutter (28488):   PDFViewer
    I/flutter (28488):   
    lib/…/panSignatureScreens/pan_screen.dart:156
    I/flutter (28488):
    I/flutter (28488): When the exception was thrown, this was the stack:
    I/flutter (28488): #2      Element.rebuild.<anonymous closure> 
    package:flutter/…/widgets/framework.dart:4371
    I/flutter (28488): #3      Element.rebuild 
    package:flutter/…/widgets/framework.dart:4374
    I/flutter (28488): #4      BuildOwner.buildScope 
    package:flutter/…/widgets/framework.dart:2777
    I/flutter (28488): #5      WidgetsBinding.drawFrame 
    package:flutter/…/widgets/binding.dart:906
    I/flutter (28488): #6      RendererBinding._handlePersistentFrameCallback 
    package:flutter/…/rendering/binding.dart:309
    I/flutter (28488): #7      SchedulerBinding._invokeFrameCallback 
    package:flutter/…/scheduler/binding.dart:1117
    I/flutter (28488): #8      SchedulerBinding.handleDrawFrame 
    package:flutter/…/scheduler/binding.dart:1055
    I/flutter (28488): #9      SchedulerBinding._handleDrawFrame 
    package:flutter/…/scheduler/binding.dart:971
    I/flutter (28488): #13     _invoke  (dart:ui/hooks.dart:251:10))
    I/flutter (28488): #14     _drawFrame  (dart:ui/hooks.dart:209:3))
    

    my usage - inside a Column(children:[])

    new Expanded(
                      child: Container(
                        child: PDFViewer(
                          document: document,
                        ),
                        decoration: BoxDecoration(
                          border: Border.all(color: Colors.black),
                        ),
                      ),
                    ),
    
  • MU'men Ahmed
    MU'men Ahmed over 2 years
    Saved me alot of time. Thanks :)
  • Al Walid Ashik
    Al Walid Ashik over 2 years
    exactly it happened with me too :D