pysteam icon indicating copy to clipboard operation
pysteam copied to clipboard

Unicode in _shortcut_generator.py

Open toastal opened this issue 7 years ago • 0 comments

[ERROR] An exception occurred while running Ice
Traceback (most recent call last):
  File "ice/decorators.py", line 9, in wrapped
    func(*args, **kwargs)
  File "ice/cli/runner.py", line 108, in run
    dry_run=opts.dry_run
  File "ice/tasks/engine.py", line 26, in run
    task(app_settings, self.users, dry_run=dry_run)
  File "ice/tasks/shortcuts.py", line 35, in __call__
    dry_run=dry_run)
  File "ice/steam_shortcut_synchronizer.py", line 105, in sync_roms_for_user
    shortcuts.set_shortcuts(user, updated_shortcuts)
  File "/usr/local/lib/python2.7/dist-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/shortcuts.py", line 41, in set_shortcuts
    write_shortcuts(paths.shortcuts_path(user_context), shortcuts)
  File "/usr/local/lib/python2.7/dist-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/shortcuts.py", line 30, in write_shortcuts
    vdf_contents = ShortcutGenerator().to_string(shortcuts)
  File "/usr/local/lib/python2.7/dist-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 20, in to_string
    string = x00 + 'shortcuts' + x00 + self.generate_array_string(shortcuts) + x08 + x08 + x0a
  File "/usr/local/lib/python2.7/dist-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 29, in generate_array_string
    string += x00 + str(i) + x00 + self.generate_shortcut_string(shortcut)
  File "/usr/local/lib/python2.7/dist-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 34, in generate_shortcut_string
    string += self.generate_keyvalue_pair("AppName",shortcut.name)
  File "/usr/local/lib/python2.7/dist-packages/pysteam-1.0.0b2-py2.7.egg/pysteam/_shortcut_generator.py", line 53, in generate_keyvalue_pair
    return x01 + key + x00 + value + (x00 if more else x08)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 9: ordinal not in range(128)

I printed out the key & value inside the generate_keyvalue_pair function and the offending value was: ('AppName', '[N64] Pok\xc3\xa9mon Snap')

toastal avatar Jul 30 '16 04:07 toastal