[vdr] ERROR: can't set PID xxxx on device y

Klaus Schmidinger Klaus.Schmidinger at cadsoft.de
Mon Feb 18 18:04:30 CET 2008


On 02/17/08 18:31, Reinhard Nissl wrote:
> Hi,
> 
> Klaus Schmidinger schrieb:
> 
>> The basic problem, as Reinhard pointed out, is that Transferring()
>> doesn't return the right value at this time, because the transfer
>> player hasn't been attached, yet.
>>
>> This change determines the Transferring condition from the fact
>> that the actual device is different than the primary device, which
>> is already the case at this early stage:
>>
>> --- device.c    2008/02/16 13:52:11     1.153
>> +++ device.c    2008/02/17 15:55:06
>> @@ -1159,7 +1159,7 @@
>>
>>  bool cDevice::Transferring(void) const
>>  {
>> -  return dynamic_cast<cTransfer *>(player) != NULL;
>> +  return ActualDevice() != PrimaryDevice();
>>  }
>>
>>  bool cDevice::AttachPlayer(cPlayer *Player)
>>
>>
>> I hope this doesn't have any other side effects...
> 
> Hmm, this might break vdr-xine. I remember a discussion which led
> to the introduction of cDevice::Transferring(), but I'm not sure
> whether I was using the same code before, which is now used to
> implement this function.
> 
> As I'm currently busy with other things, I won't find time to
> test this change the next days.

Can somebody else with vdr-xine please test whether this works?

Although I don't see how this change could affect vdr-xine.
But it should be checked, anyway.

Klaus



More information about the vdr mailing list