summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHwankyu Jhun <h.jhun@samsung.com>2020-03-12 08:58:36 +0900
committerHwankyu Jhun <h.jhun@samsung.com>2020-03-12 08:58:36 +0900
commit59fbfa6ad966815294ed6d256d182c0ece2d18c7 (patch)
tree51747d36347bfb6a96788ce9a110d7eada96a35e
parentcfc90ae639e9f971ec440fa93f985b9e1a23acb7 (diff)
downloadmedia-key-59fbfa6ad966815294ed6d256d182c0ece2d18c7.tar.gz
media-key-59fbfa6ad966815294ed6d256d182c0ece2d18c7.tar.bz2
media-key-59fbfa6ad966815294ed6d256d182c0ece2d18c7.zip
Fix bugs about handling key events
- Checks key map data before calling callback function Change-Id: I458e1d4deaecffdb4f70c5fea3f6fbaff3a65546 Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
-rw-r--r--src/media_key.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/media_key.cc b/src/media_key.cc
index f2d11d5..5a5763d 100644
--- a/src/media_key.cc
+++ b/src/media_key.cc
@@ -175,6 +175,9 @@ class MediaKey {
if (handle->cb_ == nullptr)
return ECORE_CALLBACK_RENEW;
+ if (handle->key_map_.find(ev->keyname) == handle->key_map_.end())
+ return ECORE_CALLBACK_RENEW;
+
media_key_e media_key = handle->key_map_[ev->keyname];
handle->cb_(media_key, MEDIA_KEY_STATUS_PRESSED, handle->data_);
return ECORE_CALLBACK_RENEW;
@@ -191,6 +194,9 @@ class MediaKey {
if (handle->cb_ == nullptr)
return ECORE_CALLBACK_RENEW;
+ if (handle->key_map_.find(ev->keyname) == handle->key_map_.end())
+ return ECORE_CALLBACK_RENEW;
+
media_key_e media_key = handle->key_map_[ev->keyname];
handle->cb_(media_key, MEDIA_KEY_STATUS_RELEASED, handle->data_);
return ECORE_CALLBACK_RENEW;