diff options
-rw-r--r-- | HISTORY | 5 | ||||
-rw-r--r-- | device.c | 4 | ||||
-rw-r--r-- | receiver.h | 4 |
3 files changed, 8 insertions, 5 deletions
@@ -7191,7 +7191,7 @@ Video Disk Recorder Revision History turn on adding the source character to channel names whenever they are displayed (suggested by Ludi Kaleni). -2012-09-01: Version 1.7.30 +2012-09-02: Version 1.7.30 - Fixed sorting recordings in the top level video directory. - Fixed handling control characters in SI data in case of UTF-8 encoded strings @@ -7206,6 +7206,9 @@ Video Disk Recorder Revision History - Fixed detecting transfer mode on full featured DVB cards (thanks to Stefan Huelswitt for reporting a problem with updating CA descriptors in such cases). - Fixed a race condition when zapping in transfer mode (reported by Reinhard Nissl). + This involves a slight change in the semantics of the cReceiver::Activate() function, + which is now called with 'false' *after* the receiver has been detached from the + device. - The new function cDevice::ReadFilter() can be used by devices to implement their own way of retrieving section filter data (thanks to Deti Fliegl). - The new function cDevice::HasInternalCam() can be implemented by devices that @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.c 2.66 2012/08/31 11:02:24 kls Exp $ + * $Id: device.c 2.67 2012/09/02 09:26:36 kls Exp $ */ #include "device.h" @@ -1676,10 +1676,10 @@ void cDevice::Detach(cReceiver *Receiver) for (int i = 0; i < MAXRECEIVERS; i++) { if (receiver[i] == Receiver) { Lock(); - Receiver->Activate(false); receiver[i] = NULL; Receiver->device = NULL; Unlock(); + Receiver->Activate(false); for (int n = 0; n < Receiver->numPids; n++) DelPid(Receiver->pids[n]); } @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: receiver.h 2.8 2012/06/02 13:20:44 kls Exp $ + * $Id: receiver.h 2.9 2012/09/02 09:27:20 kls Exp $ */ #ifndef __RECEIVER_H @@ -27,7 +27,7 @@ protected: void Detach(void); virtual void Activate(bool On) {} ///< This function is called just before the cReceiver gets attached to - ///< (On == true) or detached from (On == false) a cDevice. It can be used + ///< (On == true) and right after it gets detached from (On == false) a cDevice. It can be used ///< to do things like starting/stopping a thread. ///< It is guaranteed that Receive() will not be called before Activate(true). virtual void Receive(uchar *Data, int Length) = 0; |