summaryrefslogtreecommitdiffstats
path: root/gtk-gui.c
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2013-01-11 11:37:32 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-01-11 12:19:50 -0800
commitc44755878c9dea2349d9a88939652047be8f539a (patch)
tree54b4e37b2976c14f98be30d999fdc24d63b1ce79 /gtk-gui.c
parente8a896b64d0abb7d85d7aefb6ba551a22f720ffd (diff)
downloadsubsurface-c44755878c9dea2349d9a88939652047be8f539a.tar.gz
Fix SIGSEGV if no pre-existing nickname information
Loading an xml file with dive computer information without any preexisting nickname data would try to "remember" that NULL nickname. Causing a SIGSEGV if there was no nickname information. The bug was introduced by commit ec38d3708df2 ("Move device_info handling into a new 'device.c' file") when I inadvertently removed a bit too much code. It actually wants to remember a missing DC nickname as an empty one. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'gtk-gui.c')
-rw-r--r--gtk-gui.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gtk-gui.c b/gtk-gui.c
index 60dde0399..d096e7e90 100644
--- a/gtk-gui.c
+++ b/gtk-gui.c
@@ -1737,6 +1737,9 @@ void remember_dc(const char *model, uint32_t deviceid, const char *nickname, gbo
if (!nn_entry)
return;
+ if (!nickname)
+ nickname = "";
+
/* No existing nickname? */
if (!nn_entry->nickname) {
char buffer[160];