Merge branch 'tizen' into sandbox/cyeon/devel
[platform/core/uifw/libtdm.git] / src / tdm_helper.c
index 804a112..469f9b0 100644 (file)
@@ -136,6 +136,13 @@ _tdm_helper_dump_png(const char *file, const void *data, int width,
                return;
        }
 
+       if (setjmp(png_jmpbuf(pPngStruct))) {
+               /* if png has problem of writing the file, we get here */
+               png_destroy_write_struct(&pPngStruct, &pPngInfo);
+               fclose(fp);
+               return;
+       }
+
        png_init_io(pPngStruct, fp);
        png_set_IHDR(pPngStruct,
                                 pPngInfo,
@@ -288,7 +295,7 @@ tdm_helper_dump_buffer(tbm_surface_h buffer, const char *file)
                strncat(p, file, len);
                p += len;
                *(p++) = '.';
-               strncat(p, ext, 3);
+               strncat(p, ext, 4);
                p += 3;
                *p = '\0';
        } else {
@@ -710,7 +717,7 @@ tdm_helper_capture_output(tdm_output *output, tbm_surface_h dst_buffer,
        TDM_RETURN_VAL_IF_FAIL(w >= 0, TDM_ERROR_INVALID_PARAMETER);
        TDM_RETURN_VAL_IF_FAIL(h >= 0, TDM_ERROR_INVALID_PARAMETER);
        TDM_RETURN_VAL_IF_FAIL(func != NULL, TDM_ERROR_INVALID_PARAMETER);
-
+/* LCOV_EXCL_START */
        err = tdm_output_get_layer_count(output, &count);
        if (err != TDM_ERROR_NONE) {
                TDM_ERR("tdm_output_get_layer_count fail(%d)\n", err);
@@ -738,6 +745,7 @@ tdm_helper_capture_output(tdm_output *output, tbm_surface_h dst_buffer,
        func(dst_buffer, data);
 
        return TDM_ERROR_NONE;
+/* LCOV_EXCL_STOP */
 }
 
 static char *
@@ -861,12 +869,12 @@ _tdm_helper_get_backend_information(tdm_private_module *private_module, char *re
                        continue;
                }
 
+/* LCOV_EXCL_START */
                LIST_FOR_EACH_ENTRY(private_layer, &private_output->layer_list, link) {
                        if (!private_layer->usable) {
                                tdm_info_layer info;
                                unsigned int format;
                                tdm_size size;
-                               tbm_surface_info_s buf_info;
 
                                TDM_DBG_RETURN_VAL_IF_FAIL(func_layer->layer_get_info, reply);
                                memset(&info, 0, sizeof info);
@@ -876,14 +884,13 @@ _tdm_helper_get_backend_information(tdm_private_module *private_module, char *re
                                if (!private_layer->showing_buffer)
                                        continue;
 
-                               format = tbm_surface_get_format(private_layer->showing_buffer->buffer);
-                               tbm_surface_get_info(private_layer->showing_buffer->buffer, &buf_info);
-
                                size.h = tbm_surface_get_width(private_layer->showing_buffer->buffer);
                                size.v = tbm_surface_get_height(private_layer->showing_buffer->buffer);
 
                                if (info.src_config.format)
-                                       format = (info.src_config.format) ? : format;
+                                       format = info.src_config.format;
+                               else
+                                       format = tbm_surface_get_format(private_layer->showing_buffer->buffer);
 
                                TDM_SNPRINTF(reply, len, "%d   %d   %d   %p   %c%c%c%c   %ux%u   %ux%u+%u+%u   %ux%u+%u+%u   %s\n",
                                                         private_layer->index,
@@ -950,6 +957,7 @@ _tdm_helper_get_backend_information(tdm_private_module *private_module, char *re
                                }
                                }
                        }
+/* LCOV_EXCL_STOP */
                }
        }
        if (LIST_IS_EMPTY(&private_module->output_list))