Closed Bug 1260451 Opened 4 years ago Closed 4 years ago

crash in java.lang.NullPointerException: Attempt to invoke virtual method ''void org.mozilla.gecko.gfx.GLController.updateCompositor()'' on a null object reference at org.mozilla.gecko.gfx.GeckoLayerClient$1.run(GeckoLayerClient.java)

Categories

(Firefox for Android :: Toolbar, defect, critical)

All
Android
defect
Not set
critical

Tracking

()

RESOLVED FIXED
Firefox 48
Tracking Status
firefox45 --- wontfix
firefox46 --- wontfix
firefox47 --- wontfix
firefox48 --- fixed
fennec 49+ ---

People

(Reporter: kbrosnan, Assigned: sebastian)

References

(Blocks 2 open bugs)

Details

(Keywords: crash)

Crash Data

Attachments

(1 file)

This bug was filed from the Socorro interface and is 
report bp-a366468a-8200-49d5-90a0-113a52160329.
=============================================================

Resize a split window until Firefox crashes. Android N specific.
 	

java.lang.NullPointerException: Attempt to invoke virtual method 'void org.mozilla.gecko.gfx.GLController.updateCompositor()' on a null object reference
	at org.mozilla.gecko.gfx.GeckoLayerClient$1.run(GeckoLayerClient.java:176)
	at android.os.Handler.handleCallback(Handler.java:739)
	at android.os.Handler.dispatchMessage(Handler.java:95)
	at android.os.Looper.loop(Looper.java:148)
	at android.app.ActivityThread.main(ActivityThread.java:5849)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:763)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:653)
We can stick in a null check but I'm not sure if that will break the resizing. Somebody who can reproduce this should look into what kind of callbacks we're getting from Android when the window resizes. It kind of sounds like the LayerView is getting torn down and recreated, because otherwise the GL controller should not be null on the LayerView.
I looked at this briefly, and resizing does indeed cause our activity to be recreated. This is similar to an orientation change, which we handle ourselves by putting the right string into <activity configChanges> attribute. There is another string like this for resizing, but we need to build with the N preview SDK to enable that.
tracking-fennec: ? → 49+
This crash is reproducible by using Nightly in split screen mode and then resizing it to be a full screen app again.
Blocks: split-screen
Assignee: nobody → s.kaspari
Status: NEW → ASSIGNED
With handling those two additional configuration changes (New SDK not required) I can use split screen mode on Android N without crashes.

A bunch of UI components do not react to those changes yet (namely the top sites thumbnails) and look weird when the window is resized. In the future we will need to take care of not treating screen dimensions/layouts as constants.
Attachment #8741265 - Flags: review?(snorp) → review+
Comment on attachment 8741265 [details]
MozReview Request: Bug 1260451 - AndroidManifest: Handle configuration changes for smallestScreenSize and screenLayout. r?snorp

https://reviewboard.mozilla.org/r/46347/#review42929

Nice!
https://hg.mozilla.org/integration/fx-team/rev/0fdc24bbda675294c280e9336646014ea1add02d
Bug 1260451 - AndroidManifest: Handle configuration changes for smallestScreenSize and screenLayout. r=snorp
https://hg.mozilla.org/mozilla-central/rev/0fdc24bbda67
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 48
Duplicate of this bug: 1256594
You need to log in before you can comment on or make changes to this bug.