- player->Text.connect (bind(&Hints::text, this, _1, _2, _3));
- while (!player->pass ()) {
- bind (boost::ref(Pulse));
+ player->Text.connect (bind(&Hints::text, this, _1, _2, _4));
+
+ struct timeval last_pulse;
+ gettimeofday (&last_pulse, 0);
+
+ while (!player->pass()) {
+
+ struct timeval now;
+ gettimeofday (&now, 0);
+ if ((seconds(now) - seconds(last_pulse)) > 1) {
+ {
+ boost::mutex::scoped_lock lm (_mutex);
+ if (_stop) {
+ break;
+ }
+ }
+ emit (bind (boost::ref(Pulse)));
+ last_pulse = now;
+ }