z411 / trackma

Open multi-site list manager for Unix-like systems. (ex-wMAL)
https://z411.github.io/trackma
GNU General Public License v3.0
775 stars 81 forks source link

[libmal] trackma crashes when searching for a specific term #627

Closed txtsd closed 2 years ago

txtsd commented 2 years ago
λ trackma                                                                                                                                                                                    
Trackma v0.8.4  Copyright (C) 2012-2020  z411
This program comes with ABSOLUTELY NO WARRANTY; for details type `about'
This is free software, and you are welcome to redistribute it
under certain conditions; see the COPYING file for details.

Initializing engine...
Engine: Trackma v0.8.4 - using account txtsd(mal).
Engine: Reading config files...
Data: Initializing...
libmal: Initializing...
Data: Using libmal (anime)
Engine: Parsing redirection file...
Tracker (pyinotify): Initializing...
Tracker (pyinotify): Using pyinotify.

Ready. Type 'help' for a list of commands.
Press tab for autocompletion and up/down for command history.
Available statuses: watching, completed, onhold, dropped, plantowatch

 [mal] (anime) watching >> add tawawa
libmal: Searching for tawawa...
Traceback (most recent call last):
  File "/usr/bin/trackma", line 33, in <module>
    sys.exit(load_entry_point('Trackma==0.8.4', 'console_scripts', 'trackma')())
  File "/usr/lib/python3.10/site-packages/trackma/ui/cli.py", line 1079, in main
    main_cmd.cmdloop()
  File "/usr/lib/python3.10/cmd.py", line 138, in cmdloop
    stop = self.onecmd(line)
  File "/usr/lib/python3.10/site-packages/trackma/ui/cli.py", line 780, in onecmd
    return self.execute(cmd, args, line)
  File "/usr/lib/python3.10/site-packages/trackma/ui/cli.py", line 797, in execute
    return func(args)
  File "/usr/lib/python3.10/site-packages/trackma/ui/cli.py", line 409, in do_add
    entries = self.engine.search(args[0])
  File "/usr/lib/python3.10/site-packages/trackma/engine.py", line 501, in search
    return self.data_handler.search(criteria, method)
  File "/usr/lib/python3.10/site-packages/trackma/data.py", line 219, in search
    results = self.api.search(criteria, method)
  File "/usr/lib/python3.10/site-packages/trackma/lib/libmal.py", line 321, in search
    results.append(self._parse_info(item['node']))
  File "/usr/lib/python3.10/site-packages/trackma/lib/libmal.py", line 368, in _parse_info
    'type': self.type_translate[item['media_type']],
KeyError: 'unknown'

This happens in CLI as well as Qt.