From 23a07005ed9fc2eec1e0540d882d256cd48f20ab Mon Sep 17 00:00:00 2001 From: Pekka Paalanen Date: Thu, 12 Feb 2015 13:11:25 +0200 Subject: timeline: use file_create_dated() helper Use shared code for this kind of stuff. Signed-off-by: Pekka Paalanen Tested-by: Nobuhiko Tanibata Reviewed-by: Daniel Stone --- src/timeline.c | 37 ++++++++++++++++--------------------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/src/timeline.c b/src/timeline.c index bf69ba6c..c60213ea 100644 --- a/src/timeline.c +++ b/src/timeline.c @@ -31,6 +31,7 @@ #include "timeline.h" #include "compositor.h" +#include "file-util.h" struct timeline_log { clock_t clk_id; @@ -45,31 +46,25 @@ static struct timeline_log timeline_ = { CLOCK_MONOTONIC, NULL, 0 }; static int weston_timeline_do_open(void) { - time_t t; - struct tm *tmp; + const char *prefix = "weston-timeline-"; + const char *suffix = ".log"; char fname[1000]; - int ret; - t = time(NULL); - tmp = localtime(&t); - if (!tmp) { - weston_log("Conversion to local time failed, " - "cannot open timeline log file.\n"); - return -1; - } + timeline_.file = file_create_dated(prefix, suffix, + fname, sizeof(fname)); + if (!timeline_.file) { + const char *msg; - ret = strftime(fname, sizeof(fname), - "weston-timeline-%F_%H-%M-%S.log", tmp); - if (ret == 0) { - weston_log("Time formatting failed, " - "cannot open timeline log file.\n"); - return -1; - } + switch (errno) { + case ETIME: + msg = "failure in datetime formatting"; + break; + default: + msg = strerror(errno); + } - timeline_.file = fopen(fname, "w"); - if (!timeline_.file) { - weston_log("Cannot open '%s' for writing: %s\n", - fname, strerror(errno)); + weston_log("Cannot open '%s*%s' for writing: %s\n", + prefix, suffix, msg); return -1; } -- cgit v1.2.3