radio->stop_scan = true;
if (radio->scan_thread > 0) {
- pthread_cancel(radio->scan_thread);
pthread_join(radio->scan_thread, NULL);
radio->scan_thread = 0;
}
- MMRADIO_SET_STATE(radio, MM_RADIO_STATE_READY);
- MMRADIO_POST_MSG(radio, MM_MESSAGE_RADIO_SCAN_STOP, NULL);
-
MMRADIO_LOG_FLEAVE();
return MM_ERROR_NONE;
if (!radio->stop_scan)
MMRADIO_POST_MSG(radio, MM_MESSAGE_RADIO_SCAN_FINISH, NULL);
+ else
+ MMRADIO_POST_MSG(radio, MM_MESSAGE_RADIO_SCAN_STOP, NULL);
MMRADIO_LOG_FLEAVE();
MMRADIO_LOG_ERROR("trylock is failed but Not EBUSY. ret: %d", ret);
}
MMRADIO_LOG_DEBUG("pthread_join scan_thread");
- pthread_cancel(radio->scan_thread);
pthread_join(radio->scan_thread, NULL);
radio->scan_thread = 0;
}
- MMRADIO_SET_STATE(radio, MM_RADIO_STATE_READY);
- MMRADIO_POST_MSG(radio, MM_MESSAGE_RADIO_SCAN_STOP, NULL);
-
MMRADIO_LOG_FLEAVE();
return MM_ERROR_NONE;
if (!radio->stop_scan)
MMRADIO_POST_MSG(radio, MM_MESSAGE_RADIO_SCAN_FINISH, NULL);
+ else
+ MMRADIO_POST_MSG(radio, MM_MESSAGE_RADIO_SCAN_STOP, NULL);
MMRADIO_LOG_FLEAVE();