ao_gps, ao_log: Make conversions to 16-bit time log values explicit
[fw/altos] / src / kernel / ao_log_mega.c
index 78dbd980d527288bbedb1797f9b7401c91872396..432f1b851c7918c00180db1cb4748acc1ab473df 100644 (file)
@@ -48,7 +48,7 @@ ao_log(void)
 
 #if HAS_FLIGHT
        ao_log_data.type = AO_LOG_FLIGHT;
-       ao_log_data.tick = ao_sample_tick;
+       ao_log_data.tick = (uint16_t) ao_sample_tick;
 #if HAS_ACCEL
        ao_log_data.u.flight.ground_accel = ao_ground_accel;
 #endif
@@ -75,7 +75,7 @@ ao_log(void)
                /* Write samples to EEPROM */
                while (ao_log_data_pos != ao_data_head) {
                        AO_TICK_TYPE tick = ao_data_ring[ao_log_data_pos].tick;
-                       ao_log_data.tick = tick;
+                       ao_log_data.tick = (uint16_t) tick;
                        volatile struct ao_data *d = &ao_data_ring[ao_log_data_pos];
                        if ((AO_TICK_SIGNED) (tick - next_sensor) >= 0) {
                                ao_log_data.type = AO_LOG_SENSOR;
@@ -157,7 +157,7 @@ ao_log(void)
                if (ao_flight_state != ao_log_state) {
                        ao_log_state = ao_flight_state;
                        ao_log_data.type = AO_LOG_STATE;
-                       ao_log_data.tick = ao_time();
+                       ao_log_data.tick = (uint16_t) ao_time();
                        ao_log_data.u.state.state = ao_log_state;
                        ao_log_data.u.state.reason = 0;
                        ao_log_write(&ao_log_data);