-
-
Notifications
You must be signed in to change notification settings - Fork 239
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Native Java stacktraces from PlatformExceptions have a trailing empty stack frame #1570
Labels
Comments
ueman
changed the title
Native Java stacktraces have a trailing empty stack frame
Native Java stacktraces from PlatformExceptions have a trailing empty stack frame
Jul 26, 2023
Thanks @ueman |
github-project-automation
bot
moved this to Needs Discussion
in Mobile & Cross Platform SDK
Jul 26, 2023
marandaneto
moved this from Needs Discussion
to Needs More Information
in Mobile & Cross Platform SDK
Jul 26, 2023
The Java stacktrace part of the event is the following {
"type": "IllegalArgumentException",
"value": "Unsupported value: '[Ljava.lang.StackTraceElement;@c50d178' of type 'class [Ljava.lang.StackTraceElement;'",
"module": "java.lang",
"stacktrace": {
"frames": [
{
"platform": "java",
"in_app": false,
"data": {
"orig_in_app": -1
}
},
{
"function": "main",
"module": "com.android.internal.os.ZygoteInit",
"filename": "ZygoteInit.java",
"abs_path": "ZygoteInit.java",
"lineno": 1129,
"platform": "java",
"in_app": false,
"data": {
"category": "system"
}
},
{
"function": "run",
"module": "com.android.internal.os.RuntimeInit$MethodAndArgsCaller",
"filename": "RuntimeInit.java",
"abs_path": "RuntimeInit.java",
"lineno": 614,
"platform": "java",
"in_app": false,
"data": {
"category": "internals"
}
},
{
"function": "invoke",
"module": "java.lang.reflect.Method",
"platform": "java",
"in_app": false,
"data": {
"category": "indirection"
}
},
{
"function": "main",
"module": "android.app.ActivityThread",
"filename": "ActivityThread.java",
"abs_path": "ActivityThread.java",
"lineno": 9105,
"platform": "java",
"in_app": false,
"data": {
"category": "threadbase"
}
},
{
"function": "loop",
"module": "android.os.Looper",
"filename": "Looper.java",
"abs_path": "Looper.java",
"lineno": 228,
"platform": "java",
"in_app": false,
"data": {
"category": "threadbase"
}
},
{
"function": "dispatchMessage",
"module": "android.os.Handler",
"filename": "Handler.java",
"abs_path": "Handler.java",
"lineno": 102,
"platform": "java",
"in_app": false,
"data": {
"category": "threadbase"
}
},
{
"function": "handleCallback",
"module": "android.os.Handler",
"filename": "Handler.java",
"abs_path": "Handler.java",
"lineno": 955,
"platform": "java",
"in_app": false,
"data": {
"category": "threadbase"
}
},
{
"function": "run",
"module": "y8.b",
"filename": "Unknown Source",
"abs_path": "Unknown Source",
"lineno": 12,
"platform": "java",
"in_app": false
},
{
"function": "i",
"module": "y8.c",
"filename": "Unknown Source",
"abs_path": "Unknown Source",
"lineno": 0,
"platform": "java",
"in_app": false
},
{
"function": "m",
"module": "y8.c",
"filename": "DartMessenger.java",
"abs_path": "DartMessenger.java",
"lineno": 3,
"platform": "java",
"in_app": false
},
{
"function": "l",
"module": "y8.c",
"filename": "DartMessenger.java",
"abs_path": "DartMessenger.java",
"lineno": 2,
"platform": "java",
"in_app": false
},
{
"function": "a",
"module": "l9.j$a",
"filename": "MethodChannel.java",
"abs_path": "MethodChannel.java",
"lineno": 2,
"platform": "java",
"in_app": false
},
{
"function": "onMethodCall",
"module": "com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin",
"filename": "FlutterLocalNotificationsPlugin.java",
"abs_path": "FlutterLocalNotificationsPlugin.java",
"lineno": 21,
"platform": "java",
"in_app": false
},
{
"function": "getNotificationChannels",
"module": "com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin",
"filename": "FlutterLocalNotificationsPlugin.java",
"abs_path": "FlutterLocalNotificationsPlugin.java",
"lineno": 9,
"platform": "java",
"in_app": false
},
{
"function": "error",
"module": "l9.j$a$a",
"filename": "MethodChannel.java",
"abs_path": "MethodChannel.java",
"lineno": 1,
"platform": "java",
"in_app": false
},
{
"function": "d",
"module": "l9.r",
"filename": "StandardMethodCodec.java",
"abs_path": "StandardMethodCodec.java",
"lineno": 7,
"platform": "java",
"in_app": false
},
{
"function": "p",
"module": "l9.q",
"filename": "StandardMessageCodec.java",
"abs_path": "StandardMessageCodec.java",
"lineno": 67,
"platform": "java",
"in_app": false
}
]
},
"thread_id": 213252219
} |
The reason is the 1st frame:
So the parsing algo has to consider that if the frame does not have any useful data, eg function, module, filename, etc, just discard it. |
marandaneto
moved this from Needs More Information
to Needs Discussion
in Mobile & Cross Platform SDK
Jul 26, 2023
Yep, I agree |
github-project-automation
bot
moved this from Needs Review
to Done
in Mobile & Cross Platform SDK
Sep 11, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Platform
Flutter Mobile
Obfuscation
Disabled
Debug Info
Disabled
Doctor
Version
7.4.2
Steps to Reproduce
Expected Result
No trailing empty stack frame
Actual Result
Are you willing to submit a PR?
None
The text was updated successfully, but these errors were encountered: