Merge branch 'tizen' into sandbox/cyeon/devel
[platform/core/uifw/libtdm.git] / src / tdm_pp.c
index d9fcc31..a53531a 100644 (file)
@@ -9,7 +9,7 @@
  *          Taeheon Kim <th908.kim@samsung.com>,
  *          YoungJun Cho <yj44.cho@samsung.com>,
  *          SooChan Lim <sc1.lim@samsung.com>,
- *          Boram Park <sc1.lim@samsung.com>
+ *          Boram Park <boram1288.park@samsung.com>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the
@@ -60,10 +60,16 @@ _tdm_pp_print_list(struct list_head *list)
 
        TDM_RETURN_IF_FAIL(list != NULL);
 
+       str[0] = '\0';
        p = str;
        LIST_FOR_EACH_ENTRY(b, list, link) {
                if (len > 0) {
-                       int l = snprintf(p, len, " (%p,%p)", b->src, b->dst);
+                       tbm_bo src_bo = tbm_surface_internal_get_bo(b->src, 0);
+                       tbm_bo dst_bo = tbm_surface_internal_get_bo(b->dst, 0);
+                       int src_flags = tbm_bo_get_flags(src_bo);
+                       int dst_flags = tbm_bo_get_flags(dst_bo);
+                       int l = snprintf(p, len, " (%p[bo_flags:%x], %p[bo_flags:%x])",
+                                                        b->src, src_flags, b->dst, dst_flags);
                        p += l;
                        len -= l;
                } else
@@ -173,7 +179,7 @@ _tdm_pp_cb_done(tdm_pp *pp_module, tbm_surface_h src, tbm_surface_h dst, void *u
        pp_done.src = src;
        pp_done.dst = dst;
 
-       ret = tdm_thread_cb_call(private_pp, &pp_done.base);
+       ret = tdm_thread_cb_call(private_pp, &pp_done.base, 1);
        TDM_WARNING_IF_FAIL(ret == TDM_ERROR_NONE);
 }
 
@@ -567,14 +573,6 @@ tdm_pp_commit(tdm_pp *pp)
                        continue;
 
                if (ret != TDM_ERROR_NONE) {
-                       /* Not to call the user release handler when failed.
-                        * Do we have to call this function here really?
-                        * User better use set_done_handler to know when pp is done. Using
-                        * buffer_release_handler is not good.
-                        */
-                       tdm_buffer_remove_release_handler_internal(b->src);
-                       tdm_buffer_remove_release_handler_internal(b->dst);
-
                        _pthread_mutex_unlock(&private_display->lock);
                        tdm_buffer_unref_backend(b->src);
                        tdm_buffer_unref_backend(b->dst);