Subliminal.bundle
Subliminal.bundle copied to clipboard
Saving as metadata fails
Saving subtitles as metadata sometimes fails with the following error:
2014-09-16 11:23:09,872 (7fe93bfff700) : DEBUG (__init__:90) - Saving subtitles as metadata
2014-09-16 11:23:09,874 (7fe93bfff700) : CRITICAL (agentkit:983) - Exception in the update function of agent named 'Subliminal TV Subtitles', called with guid 'com.plexapp.agents.thetvdb://280494/1/1?lang=en' (most recent call last):
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/api/agentkit.py", line 981, in _update
agent.update(obj, media, lang)
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Subliminal.bundle/Contents/Code/__init__.py", line 151, in update
saveSubtitles(videos, subtitles)
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Subliminal.bundle/Contents/Code/__init__.py", line 91, in saveSubtitles
saveSubtitlesToMetadata(videos, subtitles)
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Subliminal.bundle/Contents/Code/__init__.py", line 118, in saveSubtitlesToMetadata
mediaPart.subtitles[Locale.Language.Match(subtitle.language.alpha2)][subtitle.page_link] = Proxy.Media(subtitle.content, ext="srt")
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/api/agentkit.py", line 237, in __setitem__
self._proxies[item] = make_tuple(item, value)
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/api/agentkit.py", line 220, in make_tuple
name_hash = self._core.data.hashing.sha1(item)
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/data.py", line 32, in sha1
return self._generateHash(data, hashlib.sha1(), digest)
File "/mnt/raid/plex/Plex Media Server/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/data.py", line 22, in _generateHash
obj.update(data)
TypeError: must be string or buffer, not None
2014-09-16 11:23:09,879 (7fe93bfff700) : DEBUG (model:225) - Serializing to /mnt/raid/plex/Plex Media Server/Metadata/TV Shows/4/58dd2b277c5e01eb6e95a2ae4d254b47b6703c0.bundle/Contents/com.plexapp.agents.subliminal/Info.xml
2014-09-16 11:23:09,881 (7fe93bfff700) : DEBUG (runtime:918) - Response: [200] str, 16 bytes
Storing subtitles next to media files always works.
I think this issue occurs when subtitle.page_link
is None
here: https://github.com/bramwalet/Subliminal.bundle/blob/cf9a916e95a6313dce2987ae153075cf69fb4df3/Contents/Code/init.py#L118
Looking at the API for Subliminal, it looks like page_link
will either be a string or None
: http://subliminal.readthedocs.org/en/latest/api/subtitle.html#subliminal.subtitle.Subtitle
So I guess None
needs to be handled in some way.
Can be fixed by disabling TheSubDB, but please fix it.