Registered Member
|
I'm running ktorrent SVN from today (535534) and have just tried setting up UPNP. Unfortunately, when the plugin is loaded, the entire UI freezes. Other posts regarding UPNP don't seem to help my situation.
Here's the log file from ktupnptest:
Once it hits the error, the UI freezes (ditto in KTorrent itself). It seems to be an infinite loop waiting for a signal or something. At least it's not sucking CPU, I suppose. It strikes me as strange that it appears to be parsing the *same* .xml file multiple times. Is this the desired behaviour? It also strikes me as odd, that it dies while parsing an xml file that it seems to have previously parsed without error. Are multiple threads clobbering each other, perhaps? Is there any other information that would help with this? |
Moderator
|
|
Registered Member
|
Here it is. Hope it can be fixed!
|
Registered Member
|
Follow-up:
UPnPMCastSocket::onReadyRead() seems to be getting called both when a router replies to the discover() and also from answers to downloadXMLFile(). This seems to make weird things happen (at least for me). My hack was to add a mutex to UPnPMCastSocket::onReadyRead() and to exit the function if the mutex is locked. Seems to be working so far. Of course this is not a good solution, especially for those people with a setup where more than one device will respond to discover(). I expect having downloadXMLFile() use a throw away socket should fix it up nicer. |
Moderator
|
|
Moderator
|
downloadXMLFile uses plain old HTTP to download that file, that should be a totally different socket then the multicast socket for UPnP. We use a KDE class to handle this. Say can you run ethereal on your network and then run ktupnptest ? I need to see what is going on. |
Moderator
|
I have looked over your ethereal trace and it just looks good.
First you do a search for an InternetGatewayDevice. You get 2 replies for that (from the same IP). Then a TCP connection gets made and the file gets downloaded using HTTP. So everything seems to be OK on the network side. |
Registered users: Bing [Bot], Google [Bot], Sogou [Bot]