summaryrefslogtreecommitdiff
path: root/libgps_shm.c
diff options
context:
space:
mode:
authorZbigniew Chyla <zbigniew.chyla@nokia.com>2015-04-24 17:46:49 +0200
committerEric S. Raymond <esr@thyrsus.com>2015-04-28 08:25:03 -0400
commitd1965788249d7e22cdde4021d452cf0dc6c6b9bd (patch)
treef643affa49296021751ab98d1420c9d2a1edb16f /libgps_shm.c
parent9db980e35547d00c17064ab95ec0986bb2b86081 (diff)
downloadgpsd-d1965788249d7e22cdde4021d452cf0dc6c6b9bd.tar.gz
Copy structs using assignment, not memcpy().
Diffstat (limited to 'libgps_shm.c')
-rw-r--r--libgps_shm.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/libgps_shm.c b/libgps_shm.c
index 34de8efa..d32add79 100644
--- a/libgps_shm.c
+++ b/libgps_shm.c
@@ -119,18 +119,14 @@ int gps_shm_read(struct gps_data_t *gpsdata)
*/
before = shared->bookend1;
memory_barrier();
- (void)memcpy((void *)&noclobber,
- (void *)&shared->gpsdata,
- sizeof(struct gps_data_t));
+ noclobber = shared->gpsdata;
memory_barrier();
after = shared->bookend2;
if (before != after)
return 0;
else {
- (void)memcpy((void *)gpsdata,
- (void *)&noclobber,
- sizeof(struct gps_data_t));
+ *gpsdata = noclobber;
gpsdata->privdata = private_save;
PRIVATE(gpsdata)->tick = after;
if ((gpsdata->set & REPORT_IS)!=0) {