From 445dbe73bfcc1675cdbf532752bc2b8a682dc37c Mon Sep 17 00:00:00 2001 From: "K. \\\"pestophagous\\\" Heller" Date: Thu, 3 Dec 2015 22:10:03 -0800 Subject: Crash fix in add_single_dive. No writing to dive_table.dives[-1] Signed-off-by: K. Heller Signed-off-by: Dirk Hohndel --- subsurface-core/divelist.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'subsurface-core') diff --git a/subsurface-core/divelist.c b/subsurface-core/divelist.c index a14fabf88..a2e94c067 100644 --- a/subsurface-core/divelist.c +++ b/subsurface-core/divelist.c @@ -790,6 +790,9 @@ void add_single_dive(int idx, struct dive *dive) dive_table.nr++; if (dive->selected) amount_selected++; + if (idx < 0) + // convert an idx of -1 so we do insert-at-end: + idx = dive_table.nr - 1; for (i = idx; i < dive_table.nr; i++) { struct dive *tmp = dive_table.dives[i]; dive_table.dives[i] = dive; -- cgit v1.2.3-70-g09d2