[Twisted-Python] Twisted FTP: Data must not be unicode

Tobias Oberstein tobias.oberstein at tavendo.de
Thu Nov 24 06:49:28 MST 2011


Should I file a bug? If so, any guidelines what to do?

        --- <exception caught here> ---
          File "/home/autobahn/python/lib/python2.7/site-packages/Twisted-11.1.0_r33225-py2.7-freebsd-8.2-RELEASE-p3-i386.egg/twisted/internet/defer.py", line 545, in _runCallbacks
            current.result = callback(current.result, *args, **kw)
          File "/home/autobahn/python/lib/python2.7/site-packages/Twisted-11.1.0_r33225-py2.7-freebsd-8.2-RELEASE-p3-i386.egg/twisted/protocols/ftp.py", line 907, in gotListing
            self.dtpInstance.sendListResponse(name, attrs)
          File "/home/autobahn/python/lib/python2.7/site-packages/Twisted-11.1.0_r33225-py2.7-freebsd-8.2-RELEASE-p3-i386.egg/twisted/protocols/ftp.py", line 421, in sendListResponse
            self.sendLine(self._formatOneListResponse(name, *response))
          File "/home/autobahn/python/lib/python2.7/site-packages/Twisted-11.1.0_r33225-py2.7-freebsd-8.2-RELEASE-p3-i386.egg/twisted/protocols/ftp.py", line 385, in sendLine
            self.transport.write(line + '\r\n')
          File "/home/autobahn/python/lib/python2.7/site-packages/Twisted-11.1.0_r33225-py2.7-freebsd-8.2-RELEASE-p3-i386.egg/twisted/internet/_newtls.py", line 180, in write
            FileDescriptor.write(self, bytes)
          File "/home/autobahn/python/lib/python2.7/site-packages/Twisted-11.1.0_r33225-py2.7-freebsd-8.2-RELEASE-p3-i386.egg/twisted/internet/abstract.py", line 300, in write
            raise TypeError("Data must not be unicode")
        exceptions.TypeError: Data must not be unicode


[autobahn at autobahnhub ~/Twisted]$ svn diff twisted/protocols/ftp.py
Index: twisted/protocols/ftp.py
===================================================================
--- twisted/protocols/ftp.py    (revision 33225)
+++ twisted/protocols/ftp.py    (working copy)
@@ -382,7 +382,7 @@
             self._onConnLost.callback(None)

     def sendLine(self, line):
-        self.transport.write(line + '\r\n')
+        self.transport.write(str(line) + '\r\n')


     def _formatOneListResponse(self, name, size, directory, permissions, hardlinks, modified, owner, group):





More information about the Twisted-Python mailing list