Summary: | Marble segfaults when GPS fix is lost | ||
---|---|---|---|
Product: | [Applications] marble | Reporter: | Tom Hardy <rhardy702> |
Component: | general | Assignee: | Dennis Nienhüser <nienhueser> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | nienhueser, rhardy702 |
Priority: | NOR | ||
Version: | 1.4 (KDE 4.9) | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/marble/8ec4b0569d75f8b636e969156da6ea682b68c7a0 | Version Fixed In: | KDE/4.10.0;Marble/1.5.0 |
Sentry Crash Report: | |||
Attachments: | Short track with nans sprinkled about |
Description
Tom Hardy
2012-12-26 07:36:47 UTC
Seems the position validity is not checked correctly. In order to prevent the segfault, it is sufficient to hide the opened Marble window, e.g., by switching to a different desktop before and during the lost fix. Note, although I reproduced the original problem while sitting at home, I normally encounter the problem while driving. I drive 12 hours a day with a laptop mounted on my dash, displaying Marble with OpenStreetMap. It's a bit harder to notice and duplicate a problem that way, but I generally see a crash several times a day. I see other problems as well, such as odd or disappearing tracks, but I generally don't have the ability to report adequately. Should I attempt to report anyway? Git commit 17b732a713a53df8f9a7d45b4815ac3185084e78 by Dennis Nienhüser. Committed on 23/01/2013 at 19:09. Pushed by nienhueser into branch 'master'. status is unreliable, check for nan explicitly. Losing the GPS fix often results in gpsd reporting status as ok, but reporting nan as position. These invalid coordinates result in broken position data (nan as position, random painting on the map) and likely also crashes. Related: bug 313224 M +1 -1 src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.cpp http://commits.kde.org/marble/17b732a713a53df8f9a7d45b4815ac3185084e78 Git commit 8ec4b0569d75f8b636e969156da6ea682b68c7a0 by Dennis Nienhüser. Committed on 23/01/2013 at 19:09. Pushed by nienhueser into branch 'KDE/4.10'. status is unreliable, check for nan explicitly. Losing the GPS fix often results in gpsd reporting status as ok, but reporting nan as position. These invalid coordinates result in broken position data (nan as position, random painting on the map) and likely also crashes. Related: bug 313224 FIXED-IN: KDE/4.10.0;Marble/1.5.0 (cherry picked from commit 17b732a713a53df8f9a7d45b4815ac3185084e78) M +1 -1 src/plugins/positionprovider/gpsd/GpsdPositionProviderPlugin.cpp http://commits.kde.org/marble/8ec4b0569d75f8b636e969156da6ea682b68c7a0 Created attachment 77679 [details]
Short track with nans sprinkled about
I've been on 1.5 for a full day and no crashes, to include several 15 second trips through a tunnel where Marble previously reliably crashed.
The previous behavior was to freeze upon entering the tunnel, and then segfault several seconds after exiting the tunnel.
Current behavior has one oddity: the track ends when the fix is lost as you might expect, but does not appear to pick up again, until toggling "Show Track" twice, whereupon the track is shown as you would expect. This is consistent with previous behavior where tracks would disappear for some reason, but would come back after toggling " Show Track".
I've attached a short track with nans saved previously; you might find it interesting. It shows lines from the displayed discontinuities converging toward the upper left edge of the screen and to a point beyond it. When you hold the left mouse button down on the map, or otherwise manipulate it, you get a sort of a flood fill effect. It seems to have no permanent ill effects. This is consistent with every "funny" track I have seen.
|