Opened 7 years ago
Closed 7 years ago
#3199 closed bug (Fixed)
unicode crash in deluge-console
Reported by: | Pat | Owned by: | Calum |
---|---|---|---|
Priority: | major | Milestone: | 2.0.0 |
Component: | Console UI | Version: | develop |
Keywords: | Cc: |
Description
I 'fixed' (I think) a bug in deluge-console. Please how may I submit it for approval / checkin? Here is the stacktrace:
16:58:57.792 [ERROR ][deluge.ui.console.modes.basemode :1207] 'ascii' codec can't encode character u'\xf9' in position 15: ordinal not in range(128) Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/deluge-2.0.0b2.dev141-py2.7.egg/deluge/ui/console/modes/basemode.py", line 210, in doRead self.read_input() File "/usr/local/lib/python2.7/dist-packages/deluge-2.0.0b2.dev141-py2.7.egg/deluge/ui/console/modes/torrentlist/torrentlist.py", line 286, in read_input self.minor_mode.handle_read(c) File "/usr/local/lib/python2.7/dist-packages/deluge-2.0.0b2.dev141-py2.7.egg/deluge/ui/console/modes/torrentlist/search_mode.py", line 195, in handle_read self.torrentlist.refresh([]) File "/usr/local/lib/python2.7/dist-packages/deluge-2.0.0b2.dev141-py2.7.egg/deluge/ui/console/modes/torrentlist/torrentlist.py", line 223, in refresh self.torrentview.update_torrents(lines) File "/usr/local/lib/python2.7/dist-packages/deluge-2.0.0b2.dev141-py2.7.egg/deluge/ui/console/modes/torrentlist/torrentview.py", line 325, in update_torrents trim=False, scr=self.torrentlist.torrentview_panel, File "/usr/local/lib/python2.7/dist-packages/deluge-2.0.0b2.dev141-py2.7.egg/deluge/ui/console/modes/basemode.py", line 160, in add_string return add_string(row, string, screen, self.encoding, **kwargs) File "/usr/local/lib/python2.7/dist-packages/deluge-2.0.0b2.dev141-py2.7.egg/deluge/ui/console/modes/basemode.py", line 290, in add_string screen.addstr(row, col, string, color) UnicodeEncodeError: 'ascii' codec can't encode character u'\xf9' in position 15: ordinal not in range(128)
Here is my proposed fix:
~/deluge $ git diff deluge/ui/console/modes/basemode.py diff --git a/deluge/ui/console/modes/basemode.py b/deluge/ui/console/modes/basemode.py index 6226d1bc1..804ccdb42 100644 --- a/deluge/ui/console/modes/basemode.py +++ b/deluge/ui/console/modes/basemode.py @@ -287,6 +287,7 @@ def add_string(row, fstring, screen, encoding, col=0, pad=True, pad_char=' ', tr string = string[0:remaining_chrs] try: + string = string.encode( encoding ) screen.addstr(row, col, string, color) except curses.error as ex: # Ignore exception for writing offscreen.[/code]
Thanks
Patrick
Change History (3)
comment:1 by , 7 years ago
Milestone: | needs verified → 2.0.0 |
---|---|
Owner: | set to |
Status: | new → assigned |
comment:2 by , 7 years ago
comment:3 by , 7 years ago
Resolution: | → Fixed |
---|---|
Status: | assigned → closed |
Note:
See TracTickets
for help on using tickets.
New PR: https://github.com/deluge-torrent/deluge/pull/223