((radio_seek_completed_cb)handle->user_cb[_RADIO_EVENT_TYPE_SEEK_FINISH])(msg->radio_scan.frequency, handle->user_data[_RADIO_EVENT_TYPE_SEEK_FINISH]);
break;
case MM_MESSAGE_STATE_INTERRUPTED:
- if (handle->user_cb[_RADIO_EVENT_TYPE_INTERRUPT])
- ((radio_interrupted_cb)handle->user_cb[_RADIO_EVENT_TYPE_INTERRUPT])(__convert_interrupted_code(msg->code), handle->user_data[_RADIO_EVENT_TYPE_INTERRUPT]);
+ if (msg->union_type == MM_MSG_UNION_STATE) {
+ handle->state = __convert_radio_state(msg->state.current);
+ if (handle->user_cb[_RADIO_EVENT_TYPE_INTERRUPT])
+ ((radio_interrupted_cb)handle->user_cb[_RADIO_EVENT_TYPE_INTERRUPT])(__convert_interrupted_code(msg->state.code), handle->user_data[_RADIO_EVENT_TYPE_INTERRUPT]);
+ }
break;
case MM_MESSAGE_READY_TO_RESUME:
if (handle->user_cb[_RADIO_EVENT_TYPE_INTERRUPT])