whitegeorge created this revision.
whitegeorge added a reviewer: Marble.
whitegeorge set the repository for this revision to R34 Marble.
whitegeorge added a project: Marble.

REVISION SUMMARY
  This patch is submitted as part of a Google Code-In student task.
  
  For some bizarre reason, when the QPointF is serialised to be placed in to 
the QSettings (which, on macOS and iOS, uses a plist XML document), its value 
is lost. When restoring the position in AbstractFloatItem::setSettings from a 
defective plist, a sigabrt is caused by an assertion within QList::at when the 
index of 1 is accessed as part of restoring the QPointF from the QStringList.
  
  This patch ensures that the QPointF is safely cast to a QVariant, and that 
the QVariant is restored back to a QPointF without going through the process of 
casting it to a QString and then attempting to create a new QPointF from that 
only the string value. This is kept under the protection of `#if __APPLE__` to 
ensure this minimally impacts non-Apple operating systems.

REPOSITORY
  R34 Marble

REVISION DETAIL
  https://phabricator.kde.org/D3668

AFFECTED FILES
  src/lib/marble/AbstractFloatItem.cpp

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: whitegeorge, #marble
Cc: mnafees, shentey, chaz6, dkolozsvari, cmihalache, rahn, nienhueser, 
marble-devel

Reply via email to