const char *ext;
char file[TDM_PATH_LEN];
int ret, bw;
+ char *dump_dir = NULL;
TDM_RETURN_IF_FAIL(buffer != NULL);
TDM_RETURN_IF_FAIL(str != NULL);
- if (!dir) {
- dir = tdm_helper_dump_make_directory(TDM_DUMP_DIR, NULL, NULL);
- TDM_RETURN_IF_FAIL(dir != NULL);
- }
+ dump_dir = tdm_helper_dump_make_directory(TDM_DUMP_DIR, NULL, NULL);
+
+ if (!dir)
+ dir = dump_dir;
+
+ TDM_GOTO_IF_FAIL(dir != NULL, done);
ret = tbm_surface_get_info(buffer, &info);
- TDM_RETURN_IF_FAIL(ret == TBM_SURFACE_ERROR_NONE);
+ TDM_GOTO_IF_FAIL(ret == TBM_SURFACE_ERROR_NONE, done);
if (info.format == TBM_FORMAT_ARGB8888 || info.format == TBM_FORMAT_XRGB8888) {
ext = file_exts[0];
dir, FOURCC_STR(info.format), bw, info.height, str, ext);
tdm_helper_dump_buffer(buffer, file);
+
+done:
+ free(dump_dir);
}
EXTERN void