Opened 3 months ago

Closed 2 months ago

#30086 closed defect (fixed)

Tor Browser for Android: Sync Sign-In Button crashes

Reported by: cypherpunks Owned by: tbb-team
Priority: High Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-crash, tbb.mobile, TorBrowserTeam201904, tbb-8.5-must
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Steps to reproduce:

  1. goto browsing history: Press "synced devices 0 devices"
  2. Press Sync Sign-In Button and it crashes Tor Browser instantly.

Child Tickets

Change History (6)

comment:1 Changed 3 months ago by sysrqb

Neat. Thanks for reporting this.

--------- beginning of crash
04-08 18:30:22.703 17942 17942 E AndroidRuntime: FATAL EXCEPTION: main
04-08 18:30:22.703 17942 17942 E AndroidRuntime: Process: org.torproject.torbrowser_alpha, PID: 17942
04-08 18:30:22.703 17942 17942 E AndroidRuntime: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=org.torproject.torbrowser_alpha.ACTION_FXA_GET_STARTED }
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2007)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.app.Instrumentation.execStartActivity(Instrumentation.java:1673)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.app.Activity.startActivityForResult(Activity.java:4586)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.support.v4.app.ActivityCompatJB.startActivityForResult(ActivityCompatJB.java:30)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.support.v4.app.ActivityCompat.startActivityForResult(ActivityCompat.java:162)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.support.v4.app.FragmentActivity.startActivityFromFragment(FragmentActivity.java:914)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.support.v4.app.FragmentActivity$HostCallbacks.onStartActivityFromFragment(FragmentActivity.java:1009)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.support.v4.app.Fragment.startActivity(Fragment.java:921)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.support.v4.app.Fragment.startActivity(Fragment.java:910)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at org.mozilla.gecko.home.CombinedHistoryPanel$2.onClick(CombinedHistoryPanel.java:240)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.view.View.performClick(View.java:6597)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.view.View.performClickInternal(View.java:6574)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.view.View.access$3100(View.java:778)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.view.View$PerformClick.run(View.java:25885)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:873)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:99)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:193)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:6669)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
04-08 18:30:22.703 17942 17942 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler: >>> REPORTING UNCAUGHT EXCEPTION FROM THREAD 2 ("main")
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=org.torproject.torbrowser_alpha.ACTION_FXA_GET_STARTED }
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2007)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.app.Instrumentation.execStartActivity(Instrumentation.java:1673)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.app.Activity.startActivityForResult(Activity.java:4586)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.support.v4.app.ActivityCompatJB.startActivityForResult(ActivityCompatJB.java:30)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.support.v4.app.ActivityCompat.startActivityForResult(ActivityCompat.java:162)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.support.v4.app.FragmentActivity.startActivityFromFragment(FragmentActivity.java:914)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.support.v4.app.FragmentActivity$HostCallbacks.onStartActivityFromFragment(FragmentActivity.java:1009)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.support.v4.app.Fragment.startActivity(Fragment.java:921)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.support.v4.app.Fragment.startActivity(Fragment.java:910)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at org.mozilla.gecko.home.CombinedHistoryPanel$2.onClick(CombinedHistoryPanel.java:240)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.view.View.performClick(View.java:6597)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at org.mozilla.gecko.home.CombinedHistoryPanel$2.onClick(CombinedHistoryPanel.java:240)                                                            [0/1811]
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.view.View.performClick(View.java:6597)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.view.View.performClickInternal(View.java:6574)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.view.View.access$3100(View.java:778)                            
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.view.View$PerformClick.run(View.java:25885)                                                                     
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.os.Handler.handleCallback(Handler.java:873)                                                                       
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.os.Handler.dispatchMessage(Handler.java:99)                                                                     
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.os.Looper.loop(Looper.java:193)                                                                                   
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at android.app.ActivityThread.main(ActivityThread.java:6669)                                                               
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at java.lang.reflect.Method.invoke(Native Method)                                                                            
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
04-08 18:30:22.703 17942 17942 E GeckoCrashHandler:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

In mobile/android/base/java/org/mozilla/gecko/home/CombinedHistoryPanel.java:

232         // Set up Clients empty view.
233         final Button syncSetupButton = (Button) mClientsEmptyView.findViewById(R.id.sync_setup_button);
234         syncSetupButton.setOnClickListener(new View.OnClickListener() {
235             @Override
236             public void onClick(View view) {
237                 Telemetry.sendUIEvent(TelemetryContract.Event.ACTION, TelemetryContract.Method.BUTTON, "history_syncsetup");
238                 // This Activity will redirect to the correct Activity as needed.
239                 final Intent intent = new Intent(FxAccountConstants.ACTION_FXA_GET_STARTED);                                                                                                                   
240                 startActivity(intent);
241             }
242         });
Last edited 3 months ago by sysrqb (previous) (diff)

comment:2 Changed 3 months ago by gk

Keywords: tbb-crash tbb.mobile TorBrowserTeam201904 tbb-8.5-must added; Browser Android removed
Priority: MediumHigh
Severity: MajorNormal
Version: Tor: 0.3.5.8

comment:3 Changed 3 months ago by cypherpunks

i can confirm to reproduce this on multiple android versions.

comment:4 Changed 2 months ago by sysrqb

Status: newneeds_review

I have a branch that prevents this crash and it shows a dialog with a message saying "Sync is not currently supported in Tor Browser on Android". The branch also avoids additional crashes related to the issue by commenting out setOverrideIntentAction() and launchFxASetup(). Branch bug30086_00 in my repo.

comment:5 Changed 2 months ago by sysrqb

New branch for review, bug30086_01.

I discussed this with gk, I made two small changes:

  • typo in the string, s/current/currently/
  • Deleted the change in SyncPreference.java

comment:6 Changed 2 months ago by gk

Resolution: fixed
Status: needs_reviewclosed

Looks good now, thanks! Merged to tor-browser-60.6.1esr-8.5-1 (commit 128f8ebdc9d460f4df550b5977ef30bd6ff4e302).

Note: See TracTickets for help on using tickets.