• Ian Hickson's avatar
    Rationalise all our exception handling. · ee703da9
    Ian Hickson authored
    - Create a FlutterErrorDetails struct-like class that describes an
    
      exception along with more details that aren't in the exception, like
    
      where it was caught and what was going on when it was caught.
    
    
    
    - Provide a FlutterError static API for handling these objects:
    
    
    
      - FlutterError.onError which is called whenever Flutter catches an
    
        error.
    
    
    
      - FlutterError.reportError() which handles an error.
    
    
    
      - FlutterError.dumpErrorToConsole() which is the default behavior
    
        for onError.
    
    
    
    - Removes all the existing exception handler callbacks.
    
    
    
    - Replaces all the existing places that described exceptions using
    
      debugPrint with calls to FlutterError.reportError().
    
    
    
    - Extend lockState() to also catch exceptions, so that we catch
    
      exceptions that happen during finalizers.
    
    
    
    - Make the test framework catch errors and treat them as failures.
    
    
    
    - Provide a mechanism to override this behavior in the test framework.
    
    
    
    - Make the tests that used to depend on the exception handler
    
      callbacks use this new mechanism.
    
    
    
    - Make pump() also support the phase argument.
    
    
    
    - Improve some tests using these new features.
    
    
    
    Fixes #2356, #2988, #2985, #2220.
    ee703da9
Name
Last commit
Last update
..
animation Loading commit data...
engine Loading commit data...
examples Loading commit data...
gestures Loading commit data...
harness Loading commit data...
painting Loading commit data...
rendering Loading commit data...
scheduler Loading commit data...
services Loading commit data...
widget Loading commit data...