News:

Latest versions:
Server plugin: 0.5.1
MVP dongle: 0.5.2
Raspberry Pi client: 0.5.2
Windows client: 0.5.2-1

Main Menu

Missing error checking in vompserver

Started by Schnurps, January 05, 2006, 17:46:59

Previous topic - Next topic

Schnurps

Sometimes, when vdr starts up, the vompserver fails to allocate the UDPReplier socket. (I have no idea why, I believe it only happens when the vdr is automaticallly restarted by runvdr after a crash. ???)

The UDPReplier constructor calls the DatagramSocket constructor, which fails to allocate the socket and returns a DatagramSocket that's not initted. The UDPReplier doesn't notice this, however, and uses the DatagramSocket in its threadMethod. Because the DatagramSocket is not initted, it always returns immediately from its waitforMessage method and the UDPReplier thread enters a non-blocking infinite loop that uses 100% CPU time - that means the vdr is no longer able to carry out scheduled recordings and won't react to SVDRP connections anymore. :o

It would be great if you could add an error check that prevents these infinite loops.

Chris

Well that is odd! I have added it as a bug to SF. Thanks for the detailed explanation. Now the real prize would be working out why it can't allocate the UDP socket...