Subsurface-mobile 1.0.5 (4.5.2.1569) crashes
Linus Torvalds
torvalds at linux-foundation.org
Tue Sep 20 09:05:02 PDT 2016
On Tue, Sep 20, 2016 at 7:57 AM, Dirk Hohndel <dirk at hohndel.org> wrote:
>
> 09-20 10:56:55.453 641 641 F DEBUG :
> 09-20 10:56:55.453 641 641 F DEBUG : backtrace:
> 09-20 10:56:55.453 641 641 F DEBUG : #00 pc 000177a4 /system/lib/libc.so (strcmp+48)
> 09-20 10:56:55.453 641 641 F DEBUG : #01 pc 0011882f /data/app/org.subsurfacedivelog.mobile-2/lib/arm/libsubsurface-mobile.so
> 09-20 10:56:55.453 641 641 F DEBUG : #02 pc 0014cbdd /data/app/org.subsurfacedivelog.mobile-2/lib/arm/libsubsurface-mobile.so (call_for_each_dc+384)
> 09-20 10:56:55.453 641 641 F DEBUG : #03 pc 00124229 /data/app/org.subsurfacedivelog.mobile-2/lib/arm/libsubsurface-mobile.so
> 09-20 10:56:55.454 641 641 F DEBUG : #04 pc 0012572d /data/app/org.subsurfacedivelog.mobile-2/lib/arm/libsubsurface-mobile.so
> 09-20 10:56:55.454 641 641 F DEBUG : #05 pc 00124621 /data/app/org.subsurfacedivelog.mobile-2/lib/arm/libsubsurface-mobile.so
> 09-20 10:56:55.454 641 641 F DEBUG : #06 pc 00125f3d /data/app/org.subsurfacedivelog.mobile-2/lib/arm/libsubsurface-mobile.so
> 09-20 10:56:55.454 641 641 F DEBUG : #07 pc 001d8298 /data/app/org.subsurfacedivelog.mobile-2/lib/arm/libsubsurface-mobile.so
>
> Ok, looking at the two symbols that I see in the stack trace I am now guessing
> that dc_match_serial is crashing for you. Let me see if I can add some protection
> to not dereference NULL pointers in there.
No, I don't think it's dc_match_serial(), because that wouldn't happen
at git load time.
I think it might be match_id() in core/device.c.
But *both* of those definitely depend on "dc->model" being non-NULL.
And both of them look like they may be my bad.
In all *normal* situations, dc->model is non-NULL, but I think we
*can* have a NULL model for a dive that was added manually.
Linus
More information about the subsurface
mailing list