summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2019-10-27 07:28:57 -0400
committerGravatar Dirk Hohndel <dirk@hohndel.org>2019-10-27 07:35:46 -0700
commit33137c62b05006bb2bf3925b1e504a95f356830e (patch)
tree27267df8553a21a74eb9ed0655189f872037d83a
parent08fcda60ac9a5705fa84b79cabe189a9e850e31d (diff)
downloadsubsurface-33137c62b05006bb2bf3925b1e504a95f356830e.tar.gz
Cleanup: NULL check pointer before dereferencing
Found by Coverity. CID 350081, 350087, 350095 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--core/dive.c7
-rw-r--r--desktop-widgets/divelogexportdialog.cpp2
2 files changed, 5 insertions, 4 deletions
diff --git a/core/dive.c b/core/dive.c
index 20981c48c..d845d8077 100644
--- a/core/dive.c
+++ b/core/dive.c
@@ -3275,11 +3275,12 @@ int split_dive(const struct dive *dive, struct dive **new1, struct dive **new2)
int split_dive_at_time(const struct dive *dive, duration_t time, struct dive **new1, struct dive **new2)
{
int i = 0;
- struct sample *sample = dive->dc.sample;
- *new1 = *new2 = NULL;
if (!dive)
return -1;
+
+ struct sample *sample = dive->dc.sample;
+ *new1 = *new2 = NULL;
while(sample->time.seconds < time.seconds) {
++sample;
++i;
@@ -3670,7 +3671,7 @@ static void delete_divecomputer(struct dive *d, int num)
struct divecomputer *pdc = &d->dc;
for (i = 0; i < num - 1 && pdc; i++)
pdc = pdc->next;
- if (pdc->next) {
+ if (pdc && pdc->next) {
struct divecomputer *dc = pdc->next;
pdc->next = dc->next;
free_dc(dc);
diff --git a/desktop-widgets/divelogexportdialog.cpp b/desktop-widgets/divelogexportdialog.cpp
index e44f2280d..8f192c39e 100644
--- a/desktop-widgets/divelogexportdialog.cpp
+++ b/desktop-widgets/divelogexportdialog.cpp
@@ -377,7 +377,7 @@ void DiveLogExportDialog::export_TeX(const char *filename, const bool selected_o
dive_site *site = dive->dive_site;
QRegExp ct("countrytag: (\\w+)");
QString country;
- if (ct.indexIn(site->notes) >= 0)
+ if (site && ct.indexIn(site->notes) >= 0)
country = ct.cap(1);
else
country = "";