X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Ftdm_output.c;h=6543b7de0d3b345b92b880b3e1377507b8b01071;hb=cffc8b39ddda18ef339799dfb64d53c0401b7aa3;hp=691d7bb2c775d39af78c84664222acd9bf2bd338;hpb=84462d289bf79a1b13fb890a4594b8f6bc76ae54;p=platform%2Fcore%2Fuifw%2Flibtdm.git diff --git a/src/tdm_output.c b/src/tdm_output.c index 691d7bb..6543b7d 100644 --- a/src/tdm_output.c +++ b/src/tdm_output.c @@ -259,6 +259,7 @@ static tdm_error _tdm_output_call_thread_cb_status(tdm_private_output *private_output, tdm_output_conn_status status) { tdm_thread_cb_output_status output_status; + pid_t caller_tid = syscall(SYS_gettid); tdm_error ret; memset(&output_status, 0, sizeof output_status); @@ -266,7 +267,10 @@ _tdm_output_call_thread_cb_status(tdm_private_output *private_output, tdm_output output_status.base.length = sizeof output_status; output_status.base.object_stamp = private_output->stamp; output_status.base.data = NULL; - output_status.base.sync = 1; + if (tdm_thread_in_display_thread(caller_tid)) + output_status.base.sync = 0; + else + output_status.base.sync = 1; output_status.status = status; ret = tdm_thread_cb_call(private_output, &output_status.base, 1);