Closed Bug 1006631 Opened 8 years ago Closed 7 years ago

crash in android.content.res.Resources$NotFoundException: Resource is not a ColorStateList (color or path): TypedValue{t=0x1/d=0x7f0d0076 a=3 r=0x7f0d0076} at android.content.res.Resources.loadColorStateList(Resources.java)

Categories

(Firefox for Android Graveyard :: General, defect)

All
Android
defect
Not set
critical

Tracking

(firefox33 affected)

RESOLVED DUPLICATE of bug 1067429
Tracking Status
firefox33 --- affected

People

(Reporter: aaronmt, Unassigned)

References

Details

(Keywords: crash, Whiteboard: [GT-P6210])

Crash Data

This bug was filed from the Socorro interface and is 
report bp-85f9cf76-1af1-4e36-8db2-024172140501.
=============================================================

android.content.res.Resources$NotFoundException: Resource is not a ColorStateList (color or path): TypedValue{t=0x1/d=0x7f0d0076 a=3 r=0x7f0d0076}
	at android.content.res.Resources.loadColorStateList(Resources.java:2023)
	at android.content.res.TypedArray.getColorStateList(TypedArray.java:342)
	at android.widget.TextView.<init>(TextView.java:788)
	at android.widget.TextView.<init>(TextView.java:480)
	at java.lang.reflect.Constructor.constructNative(Native Method)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:416)
	at android.view.LayoutInflater.createView(LayoutInflater.java:576)
	at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
	at android.view.LayoutInflater.onCreateView(LayoutInflater.java:644)
	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:669)
	at android.view.LayoutInflater.rInflate(LayoutInflater.java:724)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:479)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:391)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:347)
	at android.widget.Toast.makeText(Toast.java:247)
	at android.widget.Toast.makeText(Toast.java:270)
	at org.mozilla.gecko.home.HomeFragment$RemoveHistoryTask.onPostExecute(HomeFragment.java:277)
	at org.mozilla.gecko.util.UiAsyncTask$BackgroundTaskRunnable$1.run(UiAsyncTask.java:56)
	at android.os.Handler.handleCallback(Handler.java:587)
	at android.os.Handler.dispatchMessage(Handler.java:92)
	at android.os.Looper.loop(Looper.java:132)
	at android.app.ActivityThread.main(ActivityThread.java:4123)
	at java.lang.reflect.Method.invokeNative(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:491)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
	at dalvik.system.NativeStart.main(Native Method)

This is a crash solely thus far on the GT-P6210	(Galaxy Tab Plus 7")
See Also: → 976375, 987864
This implies a build with corrupt resources.
Component: General → Build Config & IDE Support
I'm not so sure this is a build issue.  Looks a great deal like https://bugzilla.mozilla.org/show_bug.cgi?id=866501, which is actually a coding error.  I'll try to look into this.
Number of crashes on 33 with the same device/API 13 (3.2)
Component: Build Config & IDE Support → General
Just to get more visibility: Nick, have you had a chance to look into this?
Flags: needinfo?(nalexander)
(In reply to Michael Comella (:mcomella) from comment #4)
> Just to get more visibility: Nick, have you had a chance to look into this?

Yeah.  It's fairly clearly that some Samsung 13 devices just can't show Toasts.  For the record, the relevant code has migrated quite a bit, and is now:

http://dxr.mozilla.org/mozilla-central/source/mobile/android/base/home/HomeFragment.java#394

It's just showing a toast.  Other than using our own toast mechanism and/or catching exceptions (!) there's nothing to be done.  Broke devices are broke.
Flags: needinfo?(nalexander)
(In reply to Nick Alexander :nalexander from comment #5)
> It's just showing a toast.  Other than using our own toast mechanism and/or
> catching exceptions (!) there's nothing to be done.  Broke devices are broke.

Do you think catching exceptions is wrong here (if we break down the models as much as possible, e.g. API == 13 - maybe a model ID or similar?)? Seems better than stranding users.
Flags: needinfo?(nalexander)
(In reply to Michael Comella (:mcomella) from comment #6)
> (In reply to Nick Alexander :nalexander from comment #5)
> > It's just showing a toast.  Other than using our own toast mechanism and/or
> > catching exceptions (!) there's nothing to be done.  Broke devices are broke.
> 
> Do you think catching exceptions is wrong here (if we break down the models
> as much as possible, e.g. API == 13 - maybe a model ID or similar?)? Seems
> better than stranding users.

I'm cool to just catch exceptions.  The thing is that we show toasts /a lot/, and we'd need to move all toasts to the freshly wrapped helper.  That sucks, and will require some education (on the mailing list, I guess).  But we can definitely do it.
Flags: needinfo?(nalexander)
Going to assume this was fixed by bug 1067429 unless someone can link to crash reports proving otherwise.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1067429
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.