[mythtv-commits] mythtv commit: r10178 - in trunk/mythtv by ijr

mythtv at cvs.mythtv.org mythtv at cvs.mythtv.org
Fri Jun 9 18:05:51 UTC 2006


      Author: ijr
        Date: 2006-06-09 18:05:49 +0000 (Fri, 09 Jun 2006)
New Revision: 10178
   Changeset: http://cvs.mythtv.org/trac/changeset/10178

Modified:

   trunk/mythtv/libs/libmyth/mythcontext.cpp
   trunk/mythtv/libs/libmyth/mythcontext.h
   trunk/mythtv/libs/libmyth/mythsocket.cpp
   trunk/mythtv/libs/libmyth/mythsocket.h
   trunk/mythtv/libs/libmyth/remotefile.cpp
   trunk/mythtv/libs/libmyth/remotefile.h
   trunk/mythtv/libs/libmyth/util.cpp
   trunk/mythtv/libs/libmyth/util.h
   trunk/mythtv/libs/libmythtv/livetvchain.cpp
   trunk/mythtv/libs/libmythtv/livetvchain.h
   trunk/mythtv/libs/libmythtv/previewgenerator.cpp
   trunk/mythtv/libs/libmythtv/previewgenerator.h
   trunk/mythtv/libs/libmythtv/remoteencoder.cpp
   trunk/mythtv/libs/libmythtv/remoteencoder.h
   trunk/mythtv/libs/libmythtv/tv_rec.h
   trunk/mythtv/programs/mythbackend/filetransfer.cpp
   trunk/mythtv/programs/mythbackend/filetransfer.h
   trunk/mythtv/programs/mythbackend/mainserver.cpp
   trunk/mythtv/programs/mythbackend/mainserver.h
   trunk/mythtv/programs/mythbackend/playbacksock.cpp
   trunk/mythtv/programs/mythbackend/playbacksock.h
   trunk/mythtv/programs/mythbackend/server.cpp
   trunk/mythtv/programs/mythbackend/server.h

Log:

Big socket cleanup patch, mostly from Jim Westfall, finished up by me.
- Converts remaining QSocket usage of the frontend/backend to the much more thread-safe MythSocket.  Moves a bunch of QSocketDevice users to MythSocket as well.
- Removes socket handling code from util.cpp.  All in MythSocket now.
- Change MythSocket from running a child thread per socket we want to be notified on reads from to one static thread that selects() on all.
- Mirror the timeout changes from Bruce's r10168.
- Add bit of code to readStringList to detect a disconnected socket, and bypass the timeouts in that case.
- Fix some reconnect logic in MythContext.
- Fix a master backend deadlock in the AutoExpirer updating when disconnecting/reconnecting a slave backend rapidly.
- Other random fixes I'm forgetting at the moment.

This still possibly has some issues, but it's been in use for days on several people's networks without major issues.  If you have problems, please run the backend/frontend with -v socket,network and get backtraces as well (if something seems stuck/not responding).

Fixes #1272, and possibly others.





More information about the mythtv-commits mailing list