Fix picture loading

Signed vs unsigned comparisons are such a pain. Since we want offsets to
be +/- 30 minutes around the dive we need to allow negative offsets - but
duration_t was defined as uint32_t.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2014-07-08 12:29:06 -07:00
parent c054b18b70
commit f297d9f91e
5 changed files with 33 additions and 6 deletions

2
dive.c
View file

@ -2389,7 +2389,7 @@ void dive_create_picture(struct dive *d, char *filename, int shift_time)
picture_load_exif_data(p, &timestamp);
if (timestamp) {
p->offset.seconds = timestamp - d->when + shift_time;
if (p->offset.seconds < -D30MIN || p->offset.seconds > d->duration.seconds + D30MIN) {
if (p->offset.seconds < -D30MIN || p->offset.seconds > (int)d->duration.seconds + D30MIN) {
// this picture doesn't belong to this dive
free(p);
return;