overlay: Generate unique name for snapshots
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 28 Aug 2013 11:37:14 +0000 (12:37 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 28 Aug 2013 13:04:27 +0000 (14:04 +0100)
Since we no longer increment the counter every frame, we need to use a
timestamp instead.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
overlay/overlay.c

index 38c597e..55c2aa3 100644 (file)
@@ -34,6 +34,7 @@
 #include <errno.h>
 #include <signal.h>
 #include <getopt.h>
+#include <time.h>
 
 #include "overlay.h"
 #include "chart.h"
@@ -754,6 +755,13 @@ static int get_sample_period(struct config *config)
        return 500000;
 }
 
+static void overlay_snapshot(struct overlay_context *ctx)
+{
+       char buf[1024];
+       sprintf(buf, "/tmp/overlay-snapshot-%ld.png", (long)time(NULL));
+       cairo_surface_write_to_png(ctx->surface, buf);
+}
+
 int main(int argc, char **argv)
 {
        static struct option long_options[] = {
@@ -853,9 +861,7 @@ int main(int argc, char **argv)
                overlay_show(ctx.surface);
 
                if (take_snapshot) {
-                       char buf[80];
-                       sprintf(buf, "overlay-snapshot-%d.png", i-1);
-                       cairo_surface_write_to_png(ctx.surface, buf);
+                       overlay_snapshot(&ctx);
                        take_snapshot = 0;
                }