Opened 16 years ago

Closed 16 years ago

Last modified 6 months ago

#475 closed bug (Fixed)

1.0.5, crash on init, unicode folder name

Reported by: anonymous Owned by: andar
Priority: major Milestone:
Component: Core Version: 1.0.4
Keywords: Cc:

Description

I used to have a previous version (some older RC, IIRC), and i upgraded to RC8 (using the ubuntu intrepid .deb)

And now I can no longer run the program.

I investigated a bit: it seems that's it's the daemon that doesn't start. so I ran it with "-d", and I got this log:

[DEBUG   ] 21:47:00 torrentmanager:310 options: {'max_download_speed_per_torrent': -1.0, 'add_paused': False, 'prioritize_first_last_pieces': True, 'max_upload_speed_per_torrent': -1.0, 'auto_managed': True, 'max_connections_per_torrent': -1, 'download_location': u'/home/xavier/Vid\xe9os', 'file_priorities': [1, 1], 'compact_allocation': False, 'max_upload_slots_per_torrent': -1}
Traceback (most recent call last):
  File "/usr/bin/deluged", line 8, in <module>
    load_entry_point('deluge==0.9.08', 'console_scripts', 'deluged')()
  File "/var/lib/python-support/python2.5/deluge/main.py", line 169, in start_daemon
    Daemon(options, args)
  File "/var/lib/python-support/python2.5/deluge/core/daemon.py", line 52, in __init__
    self.core = Core(options.port).run()
  File "/var/lib/python-support/python2.5/deluge/core/core.py", line 297, in run
    component.start()
  File "/var/lib/python-support/python2.5/deluge/component.py", line 194, in start
    _ComponentRegistry.start()
  File "/var/lib/python-support/python2.5/deluge/component.py", line 114, in start
    self.start_component(component)
  File "/var/lib/python-support/python2.5/deluge/component.py", line 121, in start_component
    self.start_component(depend)
  File "/var/lib/python-support/python2.5/deluge/component.py", line 126, in start_component
    self.components[name].start()
  File "/var/lib/python-support/python2.5/deluge/core/torrentmanager.py", line 167, in start
    self.load_state()
  File "/var/lib/python-support/python2.5/deluge/core/torrentmanager.py", line 509, in load_state
    self.add(state=torrent_state, save_state=False)
  File "/var/lib/python-support/python2.5/deluge/core/torrentmanager.py", line 319, in add
    add_torrent_params["save_path"] = str(options["download_location"])
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 16: ordinal not in range(128)
[DEBUG   ] 21:47:01 core:910 new_release: 0.9.08

Change History (6)

comment:1 by andar, 16 years ago

Resolution: fixed
Status: newclosed

Fixed [3819]

comment:2 by anonymous, 16 years ago

I confirm! I applied the changes from [3819], and it works now.

comment:3 by Adam Ehlers Nyholm Thomsen <adament@gmail.com>, 16 years ago

Resolution: fixed
Status: closedreopened
Summary: 1.0.0_RC8, crash on init, unicode folder name1.0.5, crash on init, unicode folder name
Version: 0.9.08 (1.0.0_RC8)1.0.4

The fix doesn't work when you load a str containing unicode characters, since the encode('utf-8') function assumes the string only contains ascii characters. Try running u'æøå'.encode('utf-8').encode('utf-8) the second encode fails. I get this error on 1.0.5.

comment:4 by Adam Ehlers Nyholm Thomsen <adament@gmail.com>, 16 years ago

I just realised I should probably mention I run python 2.6 but I just tried the double encode on python 2.3.4 and it gave the same error.

comment:5 by andar, 16 years ago

Milestone: 1.0.01.0.6
Resolution: fixed
Status: reopenedclosed

Fixed [4220]

Thanks!

comment:6 by (none), 16 years ago

Milestone: 1.0.6

Milestone 1.0.6 deleted

Note: See TracTickets for help on using tickets.