Skip to content
This repository has been archived by the owner on Sep 30, 2021. It is now read-only.

Crashes when opening GitHub commit links #1897

Open
andrebrait opened this issue Jun 23, 2018 · 12 comments
Open

Crashes when opening GitHub commit links #1897

andrebrait opened this issue Jun 23, 2018 · 12 comments

Comments

@andrebrait
Copy link

FastHub Version: 4.6.7
Android Version: 8.0.0 (SDK: 26)
Device Information:

  • Manufacturer: asus
  • Brand: asus
  • Model: ZenFone4 (ZE554KL)

I tried opening a link to a commit in a comment for an issue and it crashes. I reproduced it 5 times so far.

@k0shk0sh
Copy link
Owner

The link that crashes the app would be helpful

@andrebrait
Copy link
Author

In the Feed I tapped to see this comment:

gonetz/GLideN64#1574 (comment)

In it there's the link below. The app crashed (the typical Android " has stopped working" dialog) when I tapped to open it.

gonetz/GLideN64@a3e34aa

Sorry for not having included those with the report. I had no idea it would be sent to GitHub.

Ps.: For the sake of curiosity, it seems if I tap "Send Feedback" in the crash dialog and then go back, the app would reload actually show the commit page.

@andrebrait
Copy link
Author

It also crashes by tapping the link in the last comment of this issue:

skilion/onedrive#36

@k0shk0sh
Copy link
Owner

That's strange, both links open for me without any crashes.

I'll have a look at the crash reports

@andrebrait
Copy link
Author

Even clicking the links here crash it.

Do you have more than one browser installed? My system probably will ask me what app to use to open these links.

@k0shk0sh
Copy link
Owner

I have only chrome installed.

@andrebrait
Copy link
Author

I set Chrome as the default, it still crashes...

I uninstalled the others, it still crashes...

If I grab the project here and build it myself, would I be able to debug it? I have some experience with development for Android, though not extensive, but given my backgroup with Java I think I can at least find out what's going on...

@yakov116
Copy link
Collaborator

@andrebrait yes you will

@andrebrait
Copy link
Author

Just launched the app in debug mode, waited for the debugger to attach, logged in and opened the first link I could see. Here's the stack trace:

E/IssueTimelineFragment || onNotifyAdapter(): [9]
V/FA: Inactivity, disconnecting from the service
E/SchemeParser || launchUri(): [https://discord.gg/m3fqNBS]
E/InputEventReceiver: Exception dispatching input event.
E/MessageQueue-JNI: Exception in MessageQueue callback: handleReceiveCallback
E/MessageQueue-JNI: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.text.Layout.getLineForOffset(int)' on a null object reference
                        at android.widget.Editor.calculateTheFakeOffset(Editor.java:6449)
                        at android.widget.Editor.onTouchUpEvent(Editor.java:2272)
                        at android.widget.TextView.onTouchEvent(TextView.java:9760)
                        at android.view.View.dispatchTouchEvent(View.java:11722)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                        at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:445)
                        at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1828)
                        at android.app.Activity.dispatchTouchEvent(Activity.java:3333)
                        at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:68)
                        at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:68)
                        at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:407)
                        at android.view.View.dispatchPointerEvent(View.java:11961)
                        at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4798)
                        at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4612)
                        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
                        at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4203)
                        at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4169)
                        at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4296)
                        at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4177)
                        at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4353)
                        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
                        at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4203)
                        at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4169)
                    	at android.view.ViewRootImpl$InputStage.apply
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: com.fastaccess.github.debug, PID: 25850
                  java.lang.NullPointerException: Attempt to invoke virtual method 'int android.text.Layout.getLineForOffset(int)' on a null object reference
                      at android.widget.Editor.calculateTheFakeOffset(Editor.java:6449)
                      at android.widget.Editor.onTouchUpEvent(Editor.java:2272)
                      at android.widget.TextView.onTouchEvent(TextView.java:9760)
                      at android.view.View.dispatchTouchEvent(View.java:11722)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2961)
                      at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2650)
                      at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:445)
                      at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1828)
                      at android.app.Activity.dispatchTouchEvent(Activity.java:3333)
                      at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:68)
                      at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:68)
                      at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:407)
                      at android.view.View.dispatchPointerEvent(View.java:11961)
                      at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4798)
                      at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4612)
                      at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
                      at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4203)
                      at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4169)
                      at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4296)
                      at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4177)
                      at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4353)
                      at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
                      at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4203)
                      at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4169)
                      at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4177)
                      at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4150)
                      at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6671)
                      at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6645)
                      at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6606)
                      at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6774)
                      at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:186)
                      at android.os.MessageQueue.nativePollOnce(Native Method)
                      at android.os.MessageQueue.next(MessageQueue.java:325)
                      at android.os.Looper.loop(Looper.java:145)
                      at android.app.ActivityThread.main(ActivityThread.java:6568)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

@andrebrait
Copy link
Author

@k0shk0sh here's the stack trace for the crash.

Some links do not exhibit this behavior, but I couldn't identify what's the difference between the two.

@k0shk0sh
Copy link
Owner

k0shk0sh commented Jul 5, 2018

this is an internal bug and i can't do anything about not even trying to catch it :'( ..

@andrebrait
Copy link
Author

Dang...

I'll try updating some of the dependencies and then I'll get back to you.

The only places I've seen this errer were people returning a Layout as null :/

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants