Comment 2 for bug 1843995

Revision history for this message
Graham Cobb (g+launchpad) wrote :

I reported this bug in debian (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=942593), and was told it had been reported here. I have subsequently tested the fix in 0.8.05 but the bug remains, although in a different function.

Here is the update I provided in the debian bug report:

The bug still exists in the new version, although in a slightly different form:
(during "duplicity full" command)
Backtrace of previous error: Traceback (innermost last):
  File "/usr/lib/python3/dist-packages/duplicity/backend.py", line 371, in inner_retry
    return fn(self, *args)
  File "/usr/lib/python3/dist-packages/duplicity/backend.py", line 606, in _do_delete
    self.backend._delete(filename)
  File "/usr/lib/python3/dist-packages/duplicity/backends/b2backend.py", line 138, in _delete
    log.Log(u"Delete: %s" % self.path + filename, log.INFO)
 TypeError: can only concatenate str (not "bytes") to str

In this case the problem is the use of filename in _delete.

From my earlier investigation (which may be wrong, of course, as I am no expert on either Python or this code), I believe the following references also have to be "decoded", in addition to the changes already made:

In _get: the use of local_path.name
In _put: the use of source_path.name
In _delete: the two uses of filename
In _query: the two uses of filename