]> git.sesse.net Git - nageru/commitdiff
Reduce the warning storm a bit.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Sun, 1 Nov 2015 20:01:56 +0000 (21:01 +0100)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Sun, 1 Nov 2015 20:01:56 +0000 (21:01 +0100)
theme.cpp
theme.h

index f32f637c03cb0aa683cece7d1fbaa4ed1cf60433..61ead92e98bc8503a8c137f135bf89aa18c2ba27 100644 (file)
--- a/theme.cpp
+++ b/theme.cpp
@@ -493,8 +493,10 @@ std::vector<std::string> Theme::get_transition_names(float t)
 void Theme::connect_signal(YCbCrInput *input, int signal_num)
 {
        if (signal_num >= int(num_cards)) {
-               fprintf(stderr, "WARNING: Theme asked for input %d, but we only have %u card(s).\n", signal_num, num_cards);
-               fprintf(stderr, "Mapping to card %d instead.\n", signal_num % num_cards);
+               if (signals_warned_about.insert(signal_num).second) {
+                       fprintf(stderr, "WARNING: Theme asked for input %d, but we only have %u card(s).\n", signal_num, num_cards);
+                       fprintf(stderr, "Mapping to card %d instead.\n", signal_num % num_cards);
+               }
                signal_num %= num_cards;
        }
        input->set_texture_num(0, input_textures[signal_num].tex_y);
diff --git a/theme.h b/theme.h
index 2b75aa157c2870665739715a52beee9bf7bc015b..f9a3d2d71a3bb5f88d4b48980effa6a408d27775 100644 (file)
--- a/theme.h
+++ b/theme.h
@@ -10,6 +10,7 @@
 #include <stdio.h>
 #include <functional>
 #include <mutex>
+#include <set>
 #include <string>
 #include <utility>
 #include <vector>
@@ -63,6 +64,7 @@ private:
        } input_textures[MAX_CARDS];
        int num_channels;
        unsigned num_cards;
+       std::set<int> signals_warned_about;
 };
 
 class LiveInputWrapper {