1
0
Fork 0

Fix blank custom tabs following an NPE.

Fixes #1771.

This PR protects against the initial `NullPointerException` ever happening.

This is a rare case, and we do not have anything to go on at this point, so we fallback to a new intent, and the user is routed to the home activity.
master
James Hugman 2019-04-18 16:32:56 +01:00 committed by Colin Lee
parent c432cf7b40
commit 68c8ee61ea
1 changed files with 6 additions and 5 deletions

View File

@ -18,6 +18,11 @@ class IntentReceiverActivity : Activity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// The intent property is nullable, but the rest of the code below
// assumes it is not. If it's null, then we make a new one and open
// the HomeActivity.
val intent = intent?.let { Intent(intent) } ?: Intent()
val isPrivate = PreferenceManager
.getDefaultSharedPreferences(this).getBoolean(getString(R.string.pref_key_private_mode), false)
@ -27,11 +32,7 @@ class IntentReceiverActivity : Activity() {
components.utils.intentProcessor.process(intent)
}
val openToBrowser: Boolean
val intent = Intent(intent)
openToBrowser = when {
val openToBrowser = when {
CustomTabConfig.isCustomTabIntent(SafeIntent(intent)) -> {
intent.setClassName(applicationContext, CustomTabActivity::class.java.name)
true