if (scan_count >= MAX_SCAN_COUNT) {
scan_count = 0;
//MS_DBG_ERR("storage_id = [%s]", storage_id);
- msc_insert_exactor_request(scan_type, FALSE, storage_id, current_path, 0, uid);
+ ret = __msc_check_stop_status(scan_type, storage_type, new_start_path, pid);
+ if (ret == MS_MEDIA_ERR_NONE) {
+ msc_insert_exactor_request(scan_type, FALSE, storage_id, current_path, pid, uid);
+ } else {
+ if (is_recursive == true)
+ ms_change_validity_item_batch(handle, storage_id, new_start_path, 1, 2, uid);
+ goto STOP_SCAN;
+ }
}
if (insert_count_for_partial >= MAX_SCAN_COUNT) {
}*/
SCAN_DONE:
- MS_DBG_WARN("storage_id = [%s], dir Path = [%s]", storage_id, scan_data->msg);
- msc_insert_exactor_request(scan_data->msg_type, TRUE, scan_data->storage_id, scan_data->msg, scan_data->pid, uid);
-
+ MS_DBG_WARN("storage_id = [%s], dir Path = [%s], pid = [%d]", storage_id, scan_data->msg, scan_data->pid);
+ if (ret != MS_MEDIA_ERR_SCANNER_FORCE_STOP) {
+ msc_insert_exactor_request(scan_data->msg_type, TRUE, scan_data->storage_id, scan_data->msg, scan_data->pid, uid);
+ }
if (power_off2) {
MS_DBG_ERR("power off");
goto _POWEROFF;
goto END_REMOVE_REQUEST;
}
- MS_DBG_WARN("len == [%d]", len);
+ MS_DBG_WARN("len == [%d] pid=[%d], cancel_path[%s]", len, pid, cancel_path);
msc_set_cancel_scan_item(recv_msg->msg, recv_msg->pid);
- msc_set_cancel_extract_item(recv_msg->msg, recv_msg->pid);
if (len > 0) {
temp_scan_queue = g_async_queue_new();
END_REMOVE_REQUEST:
{
+ msc_set_cancel_extract_item(recv_msg->msg, recv_msg->pid);
GAsyncQueue *temp_extract_queue = NULL;
int len_extract = g_async_queue_length(folder_extract_queue);
MS_DBG_WARN("len [%d]", len_extract);