From c29059c87507bbcab6ca87b1bf1f396de6fc07f0 Mon Sep 17 00:00:00 2001 From: hut Date: Fri, 15 Feb 2013 23:55:06 +0100 Subject: ext.widestring: fix f*kups on WideString() --- ranger/ext/widestring.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ranger/ext/widestring.py b/ranger/ext/widestring.py index 88565b89..31e41210 100644 --- a/ranger/ext/widestring.py +++ b/ranger/ext/widestring.py @@ -53,7 +53,15 @@ def string_to_charlist(string): class WideString(object): def __init__(self, string, chars=None): - self.string = string + try: + self.string = str(string) + except UnicodeEncodeError: + # Here I assume that string is a "unicode" object, because why else + # would str(string) raise a UnicodeEncodeError? + try: + self.string = string.encode('latin-1', 'ignore') + except: + self.string = "" if chars is None: self.chars = string_to_charlist(string) else: -- cgit 1.4.1-2-gfad0