From c7d0cb6bd72deef810cfe1a16ac7b78810f8036b Mon Sep 17 00:00:00 2001 From: Johan Jansen Date: Tue, 10 Feb 2015 16:50:45 +0100 Subject: lsm303d: Fix memory initialization and error_count not set --- src/drivers/lsm303d/lsm303d.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src') diff --git a/src/drivers/lsm303d/lsm303d.cpp b/src/drivers/lsm303d/lsm303d.cpp index 736ecaa32..f42b31cdf 100644 --- a/src/drivers/lsm303d/lsm303d.cpp +++ b/src/drivers/lsm303d/lsm303d.cpp @@ -1589,6 +1589,7 @@ LSM303D::mag_measure() #pragma pack(pop) mag_report mag_report; + memset(&mag_report, 0, sizeof(mag_report)); /* start the performance counter */ perf_begin(_mag_sample_perf); @@ -1624,6 +1625,7 @@ LSM303D::mag_measure() mag_report.z = ((mag_report.z_raw * _mag_range_scale) - _mag_scale.z_offset) * _mag_scale.z_scale; mag_report.scaling = _mag_range_scale; mag_report.range_ga = (float)_mag_range_ga; + mag_report.error_count = perf_event_count(_bad_registers) + perf_event_count(_bad_values); // apply user specified rotation rotate_3f(_rotation, mag_report.x, mag_report.y, mag_report.z); -- cgit v1.2.3