Status plugin interface bug?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bernd Juraschek wrote:
> Hi,
> 
> recently I got the evil VDSB error (with kernel 2.4.X :-(). After self
> restarting VDR continued the recording - but this fails with the "no
> tuner lock" error.
> 
> cStatus::Recording() was not called in this case. But the function was
> called to signal the end of this (never really startet)  timer. Therefore
> there is a imbalance between start and stop status notifications - which
> may lead to some plugin misbehavior :-(
> 
> I'was not able to find quickly the way cTimer::Stop() was executed so I
> have no solution yet ...

Please try the following:

- add a funtion

   bool IsAttached(void) { return device != NULL; }

   to cReceiver (in receiver.h)

- call this function in cRecordControl::Stop():

void cRecordControl::Stop(void)
{
   if (timer) {
      bool WasAttached = recorder->IsAttached();            // new line
      DELETENULL(recorder);
      timer->SetRecording(false);
      timer = NULL;
      if (WasAttached) {                                    // new line
         cStatus::MsgRecording(device, NULL);
         cRecordingUserCommand::InvokeCommand(RUC_AFTERRECORDING, fileName);
         }                                                  // new line
      }
}


Let me know if this helps.

Klaus


[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux