-static void print_timestamp_ext(char *message, char *mode)
-{
-#if DEBUG
-#if DEBUG_PRINT_INIT_TIMESTAMPS
- static char *debug_message = NULL;
- static char *last_message = NULL;
- static int counter_nr = 0;
- int max_depth = DEBUG_PRINT_INIT_TIMESTAMPS_DEPTH;
-
- checked_free(debug_message);
- debug_message = getStringCat3(mode, " ", message);
-
- if (strEqual(mode, "INIT"))
- {
- debug_print_timestamp(counter_nr, NULL);
-
- if (counter_nr + 1 < max_depth)
- debug_print_timestamp(counter_nr, debug_message);
-
- counter_nr++;
-
- debug_print_timestamp(counter_nr, NULL);
- }
- else if (strEqual(mode, "DONE"))
- {
- counter_nr--;
-
- if (counter_nr + 1 < max_depth ||
- (counter_nr == 0 && max_depth == 1))
- {
- last_message = message;
-
- if (counter_nr == 0 && max_depth == 1)
- {
- checked_free(debug_message);
- debug_message = getStringCat3("TIME", " ", message);
- }
-
- debug_print_timestamp(counter_nr, debug_message);
- }
- }
- else if (!strEqual(mode, "TIME") ||
- !strEqual(message, last_message))
- {
- if (counter_nr < max_depth)
- debug_print_timestamp(counter_nr, debug_message);
- }
-#endif
-#endif
-}
-
-static void print_timestamp_init(char *message)
-{
- print_timestamp_ext(message, "INIT");
-}
-
-static void print_timestamp_time(char *message)
-{
- print_timestamp_ext(message, "TIME");
-}
-
-static void print_timestamp_done(char *message)
-{
- print_timestamp_ext(message, "DONE");
-}
-