summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeongmo Yang <jm80.yang@samsung.com>2016-12-20 17:59:00 +0900
committerJeongmo Yang <jm80.yang@samsung.com>2016-12-20 17:59:06 +0900
commit854a757a7a224e4cc2987cadc5996df72381f598 (patch)
treeaf55c12a13b2fa960675ceb253aca8f517603b4d
parenta32729c909eadd836a6528a7e62c2a6a552bbc22 (diff)
parent1568cc370e26c8728f1a5ab8f3e7d4284407b643 (diff)
downloadmmsvc-recorder-854a757a7a224e4cc2987cadc5996df72381f598.tar.gz
mmsvc-recorder-854a757a7a224e4cc2987cadc5996df72381f598.tar.bz2
mmsvc-recorder-854a757a7a224e4cc2987cadc5996df72381f598.zip
Change-Id: I0783f20bf2a12e3312d26a3749d46a85a0d42d4e
-rw-r--r--legacy/src/legacy_recorder.c15
-rw-r--r--packaging/mmsvc-recorder.spec2
2 files changed, 15 insertions, 2 deletions
diff --git a/legacy/src/legacy_recorder.c b/legacy/src/legacy_recorder.c
index ecdaf16..f0a7d1e 100644
--- a/legacy/src/legacy_recorder.c
+++ b/legacy/src/legacy_recorder.c
@@ -239,6 +239,9 @@ static int __mm_recorder_msg_cb(int message, void *param, void *user_data)
case MM_MESSAGE_CAMCORDER_STATE_CHANGED_BY_ASM:
case MM_MESSAGE_CAMCORDER_STATE_CHANGED_BY_SECURITY:
case MM_MESSAGE_CAMCORDER_STATE_CHANGED_BY_RM:
+ {
+ static int interrupt_state = -1;
+
previous_state = handle->state;
handle->state = __recorder_state_convert(m->state.current);
recorder_policy_e policy = RECORDER_POLICY_NONE;
@@ -267,6 +270,12 @@ static int __mm_recorder_msg_cb(int message, void *param, void *user_data)
LOGW("RECORDER_POLICY_RESOURCE_CONFLICT");
}
+ if (message != MM_MESSAGE_CAMCORDER_STATE_CHANGED &&
+ interrupt_state == -1) {
+ interrupt_state = previous_state;
+ LOGD("interrupt state %d", interrupt_state);
+ }
+
if (previous_state != handle->state && handle->user_cb[_RECORDER_EVENT_TYPE_STATE_CHANGE])
((recorder_state_changed_cb)handle->user_cb[_RECORDER_EVENT_TYPE_STATE_CHANGE])(previous_state, handle->state, policy, handle->user_data[_RECORDER_EVENT_TYPE_STATE_CHANGE]);
@@ -274,11 +283,15 @@ static int __mm_recorder_msg_cb(int message, void *param, void *user_data)
if (policy != RECORDER_POLICY_NONE &&
(m->state.current == MM_CAMCORDER_STATE_PAUSED || m->state.current == MM_CAMCORDER_STATE_NULL)) {
if (handle->user_cb[_RECORDER_EVENT_TYPE_INTERRUPTED])
- ((recorder_interrupted_cb)handle->user_cb[_RECORDER_EVENT_TYPE_INTERRUPTED])(policy, previous_state, handle->state, handle->user_data[_RECORDER_EVENT_TYPE_INTERRUPTED]);
+ ((recorder_interrupted_cb)handle->user_cb[_RECORDER_EVENT_TYPE_INTERRUPTED])(policy, interrupt_state, handle->state, handle->user_data[_RECORDER_EVENT_TYPE_INTERRUPTED]);
else
LOGW("_RECORDER_EVENT_TYPE_INTERRUPTED cb is NULL");
+
+ /* initialize interrupt state */
+ interrupt_state = -1;
}
break;
+ }
case MM_MESSAGE_CAMCORDER_MAX_SIZE:
case MM_MESSAGE_CAMCORDER_NO_FREE_SPACE:
case MM_MESSAGE_CAMCORDER_TIME_LIMIT:
diff --git a/packaging/mmsvc-recorder.spec b/packaging/mmsvc-recorder.spec
index e7a9bfc..adf75d0 100644
--- a/packaging/mmsvc-recorder.spec
+++ b/packaging/mmsvc-recorder.spec
@@ -1,6 +1,6 @@
Name: mmsvc-recorder
Summary: A Recorder module for muse server
-Version: 0.2.31
+Version: 0.2.32
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0