diff --git a/beets/ui/__init__.py b/beets/ui/__init__.py index 658a997e5..2983358fa 100644 --- a/beets/ui/__init__.py +++ b/beets/ui/__init__.py @@ -381,6 +381,11 @@ def _colordiff(a, b, highlight='red'): else: return colorize(highlight, a), colorize(highlight, b) + if not isinstance(a, unicode) or not isinstance(b, unicode): + # This is probably a path + a = util.displayable_path(a) + b = util.displayable_path(b) + a_out = [] b_out = [] diff --git a/beets/ui/commands.py b/beets/ui/commands.py index f5f12f6b4..39f353421 100644 --- a/beets/ui/commands.py +++ b/beets/ui/commands.py @@ -1107,6 +1107,9 @@ def modify_items(lib, mods, query, write, move, album, confirm): key, value = mod.split('=', 1) if key not in allowed_keys: raise ui.UserError('"%s" is not a valid field' % key) + + if key == 'artpath': + value = util.bytestring_path(value) fsets[key] = _convert_type(key, value, album) # Get the items to modify.