hi Duncan, thanks for the interest I fought with this bug for a couple of days, and then I had to give up (I really use my freevo-box as a PVR) ; I downgraded python-twisted to 2.4 , and reinstalled freevo 1.7.3 again (and all works fine now - but for a patch, see attachment , that patch must be applied to src/utils/marmalade.py in freevo code).
Unfortunately, freevo 1.7.3 only works with python-twisted 2.4 , while freevo 1.7.5 only works with python-twisted 2.5. So it is quite messy to test this bug, and at the same time have a reasonably working PVR :-( . The good point is that Debian/Etch contains python-twisted 2.4 , and Debian/Sid contains python-twisted 2.5 ; so I can switch between the two by de/installing Debian packages. (I have also packages freevo 1.7.3 and 1.7.5 , to switch between the two) Duncan Webb ha scritto: > There are very few differences in ivtv_record between versions 1.7.3 and > 1.7.5. And none between 1.7.4 and 1.7.5. I tried 1.7.3 and 1.7.5 , never 1.7.4 (just for the record) > Did you restart the recordserver after re-configuring? yes, I have a shell script that starts/stops everything anyway the problem is not only in ther recordserver : as i said before, I cannot watch live TV as well.... BTW: suppose I unpack freevo-1.7.5.tar.gz in a directory, and at the same time I have 1.7.3 installed in the filesytem ; is there a way (short of deinstalling 1.7.3 :-) to launch 1.7.5 and be sure that all the code I run is from 1.7.5 and not from the installed 1.7.3 ? a.
Index: freevo-1.7.3/src/util/marmalade.py.orig =================================================================== --- freevo-1.7.3.orig/src/util/marmalade.py 2007-11-06 09:32:03.000000000 +0100 +++ freevo-1.7.3/src/util/marmalade.py 2007-11-06 21:44:12.000000000 +0100 @@ -163,6 +163,12 @@ retval = float(node.getAttribute("value")) elif node.tagName == "longint": retval = long(node.getAttribute("value")) + elif node.tagName == "bool": + retval = int(node.getAttribute("value")) + if retval: + retval = True + else: + retval = False elif node.tagName == "module": retval = namedModule(str(node.getAttribute("name"))) elif node.tagName == "class": @@ -318,6 +324,9 @@ # so that the object will show up where it's referenced first NOT # by a method. node.appendChild(self.jellyToNode(obj.im_self)) + elif hasattr(types, 'BooleanType') and objType is types.BooleanType: + node = self.document.createElement("bool") + node.setAttribute("value", str(int(obj))) elif objType is types.ModuleType: node = self.document.createElement("module") node.setAttribute("name", obj.__name__) @@ -383,8 +392,10 @@ else: if hasattr(obj, "__getstate__"): state = obj.__getstate__() - else: + elif hasattr(obj, "__dict__"): state = obj.__dict__ + else: + raise "Unsupported type: %s %s" % (objType.__name__,repr(obj)) n = self.jellyToNode(state) node.appendChild(n) else:
signature.asc
Description: OpenPGP digital signature
------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________ Freevo-devel mailing list Freevo-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-devel