Fix rounding of GPS coordinates

The whole "+ 0.5" to round to integers only works for positive values,
and GPS coordinates are signed.

So use the proper "round to int" function (rint()), which does this correctly.

Also, remove the redundant check against the master gps values: we
already checked that if we do have a master dive, the gps values must
match the currently edited dive, so comparing against the master is
entirely redundant.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Fix saving of changed GPS entry

We can't use gps_changed() in the gps_map_callback function, because that
will actually change the GPS data in the dive being edited, which in turn
will then cause us to later (when we *really* want to change it) not match
the master dive data any more, and think we shouldn't edit the dive at
all.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>