Package version up
[platform/upstream/libxkbcommon.git] / bench / compose.c
index 267b757..4198e32 100644 (file)
@@ -21,6 +21,8 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
+#include "config.h"
+
 #include <time.h>
 
 #include "xkbcommon/xkbcommon-compose.h"
@@ -37,21 +39,25 @@ main(void)
     char *path;
     FILE *file;
     struct xkb_compose_table *table;
-    struct bench_timer timer;
+    struct bench bench;
     char *elapsed;
 
     ctx = test_get_context(CONTEXT_NO_FLAG);
     assert(ctx);
 
-    path = test_get_path("compose/en_US.UTF-8/Compose");
-    file = fopen(path, "r");
+    path = test_get_path("locale/en_US.UTF-8/Compose");
+    file = fopen(path, "rb");
+    if (file == NULL) {
+        perror(path);
+        free(path);
+        xkb_context_unref(ctx);
+        return -1;
+    }
 
     xkb_context_set_log_level(ctx, XKB_LOG_LEVEL_CRITICAL);
     xkb_context_set_log_verbosity(ctx, 0);
 
-    bench_timer_reset(&timer);
-
-    bench_timer_start(&timer);
+    bench_start(&bench);
     for (int i = 0; i < BENCHMARK_ITERATIONS; i++) {
         rewind(file);
         table = xkb_compose_table_new_from_file(ctx, file, "",
@@ -60,12 +66,12 @@ main(void)
         assert(table);
         xkb_compose_table_unref(table);
     }
-    bench_timer_stop(&timer);
+    bench_stop(&bench);
 
     fclose(file);
     free(path);
 
-    elapsed = bench_timer_get_elapsed_time_str(&timer);
+    elapsed = bench_elapsed_str(&bench);
     fprintf(stderr, "compiled %d compose tables in %ss\n",
             BENCHMARK_ITERATIONS, elapsed);
     free(elapsed);