{"action":"opened","issue":{"url":"https://api.github.com/repos/gnumdk/lollypop/issues/1002","repository_url":"https://api.github.com/repos/gnumdk/lollypop","labels_url":"https://api.github.com/repos/gnumdk/lollypop/issues/1002/labels{/name}","comments_url":"https://api.github.com/repos/gnumdk/lollypop/issues/1002/comments","events_url":"https://api.github.com/repos/gnumdk/lollypop/issues/1002/events","html_url":"https://github.com/gnumdk/lollypop/issues/1002","id":213440554,"number":1002,"title":"Sync fails when computed file name contains certain characters","user":{"login":"neckcen","id":620960,"avatar_url":"https://avatars3.githubusercontent.com/u/620960?v=3","gravatar_id":"","url":"https://api.github.com/users/neckcen","html_url":"https://github.com/neckcen","followers_url":"https://api.github.com/users/neckcen/followers","following_url":"https://api.github.com/users/neckcen/following{/other_user}","gists_url":"https://api.github.com/users/neckcen/gists{/gist_id}","starred_url":"https://api.github.com/users/neckcen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/neckcen/subscriptions","organizations_url":"https://api.github.com/users/neckcen/orgs","repos_url":"https://api.github.com/users/neckcen/repos","events_url":"https://api.github.com/users/neckcen/events{/privacy}","received_events_url":"https://api.github.com/users/neckcen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-03-10T20:12:40Z","updated_at":"2017-03-10T20:12:40Z","closed_at":null,"body":"Lollypop 0.9.230\r\n\r\nMTP sync fails if the computed file name contains `\\`:\r\n\r\n     MtpSync::_retry(gi.FunctionInfo(move), (<File object at 0x7f6885f6edc8 (GDaemonFile at 0x3530700)>, <flags G_FILE_COPY_OVERWRITE of type GFileCopyFlags>, None, None)): g-io-error-quark: libmtp error:  Could not send object. (0)\r\n    mtp://...Years%20Back%5CCome.mp3\r\n\r\nMTP sync also fails if the computed file name contains `#`:\r\n\r\n    MtpSync::_retry(gi.FunctionInfo(move), (<File object at 0x7f6894563c18 (GDaemonFile at 0x7f6868069b30)>, <flags G_FILE_COPY_OVERWRITE of type GFileCopyFlags>, None, None)): g-io-error-quark: The specified location is not mounted (16)\r\n    mtp://...Motherf#ck.mp3\r\n\r\nFlat file sync fails if the computed file contains name contains `\\`:\r\n\r\n    MtpSync::_retry(gi.FunctionInfo(move), (<File object at 0x7f1c6c4d8f30 (GLocalFile at 0x1a90b00)>, <flags G_FILE_COPY_OVERWRITE of type GFileCopyFlags>, None, None)): g-io-error-quark: Invalid filename (10)\r\nfile:///...Years%20Back%5CCome.mp3\r\n\r\nI assume whether these error or not depend on the underlying filesystem, although `#` seems to mess with MTP only. It might be a good idea to replace [all potentially troublesome characters](https://en.wikipedia.org/wiki/Filename#Reserved_characters_and_words) (plus `#`, apparently).\r\n"}}
{"actor":{"display_login":"neckcen"}}