Remove internal edit mode and add "content" tool.
[ardour.git] / gtk2_ardour / midi_tracer.cc
index ea4b0c2d545cdaae2e87e20cebf337645689eb85..cbf500ff99b321df4ca4db57085044bd04f12c27 100644 (file)
@@ -23,6 +23,9 @@
 #include <sys/time.h>
 #include <time.h>
 
+#include "pbd/localtime_r.h"
+#include "pbd/timersub.h"
+
 #include "midi++/parser.h"
 
 #include "ardour/async_midi_port.h"
@@ -40,13 +43,11 @@ using namespace Glib;
 
 MidiTracer::MidiTracer ()
        : ArdourWindow (_("MIDI Tracer"))
-       , parser (0)
        , line_count_adjustment (200, 1, 2000, 1, 10)
        , line_count_spinner (line_count_adjustment)
        , line_count_label (_("Line history: "))
        , autoscroll (true)
        , show_hex (true)
-       , collect (true)
        , show_delta_time (false)
        , _update_queued (0)
        , fifo (1024)
@@ -212,7 +213,7 @@ MidiTracer::tracer (Parser&, byte* msg, size_t len)
                s = snprintf (buf, bufsize, "+%02" PRId64 ":%06" PRId64, (int64_t) delta.tv_sec, (int64_t) delta.tv_usec);
                bufsize -= s;
        } else {
-               localtime_r (&tv.tv_sec, &now);
+               localtime_r ((const time_t*)&tv.tv_sec, &now);
                s = strftime (buf, bufsize, "%H:%M:%S", &now);
                bufsize -= s;
                s += snprintf (&buf[s], bufsize, ".%06" PRId64, (int64_t) tv.tv_usec);
@@ -402,6 +403,8 @@ MidiTracer::tracer (Parser&, byte* msg, size_t len)
        // If you want to append more to the line, uncomment this first
        // bufsize -= s;
 
+       assert(s <= buffer_size); // clang dead-assignment
+
        fifo.write (&buf, 1);
 
        if (g_atomic_int_get (const_cast<gint*> (&_update_queued)) == 0) {