From 200d3c6cb436097eaee7c951a0c9921bfcb75c7f Mon Sep 17 00:00:00 2001 From: Vincent Driessen Date: Mon, 6 Jun 2016 12:13:37 +0200 Subject: Don't choke on (legitimately) invalidly encoded Unicode paths --- git/diff.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'git/diff.py') diff --git a/git/diff.py b/git/diff.py index 9073767e..aeaa67d5 100644 --- a/git/diff.py +++ b/git/diff.py @@ -404,15 +404,15 @@ class Diff(object): a_mode = old_mode or deleted_file_mode or (a_path and (b_mode or new_mode or new_file_mode)) b_mode = b_mode or new_mode or new_file_mode or (b_path and a_mode) index.append(Diff(repo, - a_path and a_path.decode(defenc), - b_path and b_path.decode(defenc), + a_path and a_path.decode(defenc, 'replace'), + b_path and b_path.decode(defenc, 'replace'), a_blob_id and a_blob_id.decode(defenc), b_blob_id and b_blob_id.decode(defenc), a_mode and a_mode.decode(defenc), b_mode and b_mode.decode(defenc), new_file, deleted_file, - rename_from and rename_from.decode(defenc), - rename_to and rename_to.decode(defenc), + rename_from and rename_from.decode(defenc, 'replace'), + rename_to and rename_to.decode(defenc, 'replace'), None)) previous_header = header -- cgit v1.2.1