summaryrefslogtreecommitdiff
path: root/libgps_shm.c
diff options
context:
space:
mode:
authorZbigniew Chyla <zbigniew.chyla@nokia.com>2015-05-02 02:03:40 +0200
committerEric S. Raymond <esr@thyrsus.com>2015-06-01 05:19:43 -0400
commitbbbcef62fab3e1190a18a8c1c1636623bcb099c4 (patch)
treea6a51acf104c36a8e103a9379a7ea7e519ae511c /libgps_shm.c
parent4827ed805c6a03b8a4592a366bd13d94cc6a2689 (diff)
downloadgpsd-bbbcef62fab3e1190a18a8c1c1636623bcb099c4.tar.gz
Fix memory leak in case of shmat() failure
Diffstat (limited to 'libgps_shm.c')
-rw-r--r--libgps_shm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libgps_shm.c b/libgps_shm.c
index 18ac14af..b2ada1a1 100644
--- a/libgps_shm.c
+++ b/libgps_shm.c
@@ -59,6 +59,7 @@ int gps_shm_open(struct gps_data_t *gpsdata)
PRIVATE(gpsdata)->shmseg = shmat(shmid, 0, 0);
if (PRIVATE(gpsdata)->shmseg == (void *) -1) {
/* attach failed for sume unknown reason */
+ free(gpsdata->privdata);
return -2;
}
#ifndef USE_QT