X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fmm_camcorder_internal.c;h=6b07da4de933e4eedf6bd60e3265fd739af9d84a;hb=48a734a49365f9cdc7ae77cdc9e666973be3766c;hp=3eb1590cd30548d21176f1676969edf9fb84d6e3;hpb=f7cfb190f0378f1fb04697738c903d9542bd5d68;p=platform%2Fcore%2Fmultimedia%2Flibmm-camcorder.git diff --git a/src/mm_camcorder_internal.c b/src/mm_camcorder_internal.c index 3eb1590..6b07da4 100644 --- a/src/mm_camcorder_internal.c +++ b/src/mm_camcorder_internal.c @@ -1061,6 +1061,9 @@ int _mmcamcorder_realize(MMHandleType handle) if (dpm_camera_state == DPM_DISALLOWED) { _mmcam_dbg_err("CAMERA DISALLOWED by DPM"); ret = MM_ERROR_POLICY_RESTRICTED; + + _mmcamcorder_request_dpm_popup(hcamcorder->gdbus_conn, "camera"); + goto _ERR_CAMCORDER_CMD_PRECON_AFTER_LOCK; } } else { @@ -1749,6 +1752,9 @@ int _mmcamcorder_record(MMHandleType handle) if (dpm_mic_state == DPM_DISALLOWED) { _mmcam_dbg_err("MIC DISALLOWED by DPM"); ret = MM_ERROR_COMMON_INVALID_PERMISSION; + + _mmcamcorder_request_dpm_popup(hcamcorder->gdbus_conn, "microphone"); + goto _ERR_CAMCORDER_CMD_PRECON_AFTER_LOCK; } } else { @@ -3196,9 +3202,9 @@ GstBusSyncReply _mmcamcorder_encode_pipeline_bus_sync_callback(GstBus *bus, GstM _mmcamcorder_send_message((MMHandleType)hcamcorder, &msg); } - } - goto DROP_MESSAGE; + goto DROP_MESSAGE; + } } if (err) { @@ -3423,6 +3429,8 @@ void _mmcamcorder_dpm_camera_policy_changed_cb(const char *name, const char *val hcamcorder->state_change_by_system = _MMCAMCORDER_STATE_CHANGE_NORMAL; _MMCAMCORDER_UNLOCK_ASM(hcamcorder); + + _mmcamcorder_request_dpm_popup(hcamcorder->gdbus_conn, "camera"); } _mmcam_dbg_warn("done"); @@ -4019,6 +4027,8 @@ static gint __mmcamcorder_gst_handle_resource_error(MMHandleType handle, int cod _MMCAMCORDER_UNLOCK_ASM(hcamcorder); + _mmcamcorder_request_dpm_popup(hcamcorder->gdbus_conn, "microphone"); + return MM_ERROR_POLICY_RESTRICTED; } }