{"action":"created","comment":{"url":"https://api.github.com/repos/xbmc/xbmc/pulls/comments/52982234","id":52982234,"diff_hunk":"@@ -35,6 +35,10 @@\n #include \"interfaces/python/XBPython.h\"\n #endif\n \n+// Guarantee that CSpecialProtocol is initialized before and uninitialized after RarManager\n+#include \"filesystem/SpecialProtocol.h\"\n+std::map<std::string, std::string> CSpecialProtocol::m_pathMap;","path":"xbmc/SystemGlobals.cpp","position":6,"original_position":6,"commit_id":"53cc8be9aa47f6b50068bc50b9f4f9ddc566a22a","original_commit_id":"53cc8be9aa47f6b50068bc50b9f4f9ddc566a22a","user":{"login":"afedchin","id":2063885,"avatar_url":"https://avatars.githubusercontent.com/u/2063885?v=3","gravatar_id":"","url":"https://api.github.com/users/afedchin","html_url":"https://github.com/afedchin","followers_url":"https://api.github.com/users/afedchin/followers","following_url":"https://api.github.com/users/afedchin/following{/other_user}","gists_url":"https://api.github.com/users/afedchin/gists{/gist_id}","starred_url":"https://api.github.com/users/afedchin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/afedchin/subscriptions","organizations_url":"https://api.github.com/users/afedchin/orgs","repos_url":"https://api.github.com/users/afedchin/repos","events_url":"https://api.github.com/users/afedchin/events{/privacy}","received_events_url":"https://api.github.com/users/afedchin/received_events","type":"User","site_admin":false},"body":"may be just move m_pathMap to SpecialProtocol.h and leave inclusuion as is.","created_at":"2016-02-16T08:53:46Z","updated_at":"2016-02-16T08:53:46Z","html_url":"https://github.com/xbmc/xbmc/pull/9146#discussion_r52982234","pull_request_url":"https://api.github.com/repos/xbmc/xbmc/pulls/9146","_links":{"self":{"href":"https://api.github.com/repos/xbmc/xbmc/pulls/comments/52982234"},"html":{"href":"https://github.com/xbmc/xbmc/pull/9146#discussion_r52982234"},"pull_request":{"href":"https://api.github.com/repos/xbmc/xbmc/pulls/9146"}}},"pull_request":{"url":"https://api.github.com/repos/xbmc/xbmc/pulls/9146","id":59427037,"html_url":"https://github.com/xbmc/xbmc/pull/9146","diff_url":"https://github.com/xbmc/xbmc/pull/9146.diff","patch_url":"https://github.com/xbmc/xbmc/pull/9146.patch","issue_url":"https://api.github.com/repos/xbmc/xbmc/issues/9146","number":9146,"state":"open","locked":false,"title":"[cmake] Fix tests (/ static initialization order)","user":{"login":"fetzerch","id":1133994,"avatar_url":"https://avatars.githubusercontent.com/u/1133994?v=3","gravatar_id":"","url":"https://api.github.com/users/fetzerch","html_url":"https://github.com/fetzerch","followers_url":"https://api.github.com/users/fetzerch/followers","following_url":"https://api.github.com/users/fetzerch/following{/other_user}","gists_url":"https://api.github.com/users/fetzerch/gists{/gist_id}","starred_url":"https://api.github.com/users/fetzerch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fetzerch/subscriptions","organizations_url":"https://api.github.com/users/fetzerch/orgs","repos_url":"https://api.github.com/users/fetzerch/repos","events_url":"https://api.github.com/users/fetzerch/events{/privacy}","received_events_url":"https://api.github.com/users/fetzerch/received_events","type":"User","site_admin":false},"body":"This is an attempt to fix the unit tests when building with CMake.\r\n\r\n79fe295 Fixes the static initialization order of CSpecialProtocol/RarManager:\r\nThe destructor of RarManager uses CSpecialProtocol (a class with only statics). Therefore we have to make sure that CSpecialProtocol is destructed after RarManager. According to the C++ standard, the order of con/destruction for statics is only guaranteed within the same compilation unit. Not a nice fix, I'm happy if anyone has a better idea.\r\n\r\nValgrind:\r\n```\r\nInvalid read of size 8\r\n  in CSpecialProtocol::GetPath(std::string const&amp;) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/SpecialProtocol.cpp:268\r\n  1: std::string::compare(std::string const&amp;) const in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20\r\n  2: bool std::operator&lt; &lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;(std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;, std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;) in /usr/include/c++/4.9/bits/basic_string.h:2590\r\n  3: std::less&lt;std::string&gt;::operator()(std::string const&amp;, std::string const&amp;) const in /usr/include/c++/4.9/bits/stl_function.h:371\r\n  4: std::_Rb_tree&lt;std::string, std::pair&lt;std::string const, std::string&gt;, std::_Select1st&lt;std::pair&lt;std::string const, std::string&gt; &gt;, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::_M_lower_bound(std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt;*, std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt;*, std::string const&amp;) in /usr/include/c++/4.9/bits/stl_tree.h:1261\r\n  5: std::_Rb_tree&lt;std::string, std::pair&lt;std::string const, std::string&gt;, std::_Select1st&lt;std::pair&lt;std::string const, std::string&gt; &gt;, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::find(std::string const&amp;) in /usr/include/c++/4.9/bits/stl_tree.h:1913\r\n  6: std::map&lt;std::string, std::string, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::find(std::string const&amp;) in /usr/include/c++/4.9/bits/stl_map.h:860\r\n  7: CSpecialProtocol::GetPath(std::string const&amp;) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/SpecialProtocol.cpp:268\r\n  8: CSpecialProtocol::TranslatePath(CURL const&amp;) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/SpecialProtocol.cpp:166\r\n  9: XFILE::CSpecialProtocolFile::TranslatePath(CURL const&amp;) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/SpecialProtocolFile.cpp:36\r\n  10: XFILE::COverrideFile::Delete(CURL const&amp;) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/OverrideFile.cpp:61\r\n  11: XFILE::CFile::Delete(CURL const&amp;) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/File.cpp:798\r\n  12: XFILE::CFile::Delete(std::string const&amp;) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/File.cpp:785\r\n  13: CRarManager::ClearCache(bool) in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/RarManager.cpp:472\r\n  14: CRarManager::~CRarManager() in /home/jcf/develop/kodi/kodi17/xbmc/filesystem/RarManager.cpp:67\r\n  15: __run_exit_handlers in /build/buildd/glibc-2.21/stdlib/exit.c:82\r\n  16: exit in /build/buildd/glibc-2.21/stdlib/exit.c:104\r\n  17: (below main) in /build/buildd/glibc-2.21/csu/libc-start.c:323\r\nAddress 0x1d3d8bf0 is 32 bytes inside a block of size 48 free'd  1: operator delete(void*) in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so\r\n  2: __gnu_cxx::new_allocator&lt;std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::deallocate(std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt;*, unsigned long) in /usr/include/c++/4.9/ext/new_allocator.h:110\r\n  3: std::allocator_traits&lt;std::allocator&lt;std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt; &gt;::deallocate(std::allocator&lt;std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;&amp;, std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt;*, unsigned long) in /usr/include/c++/4.9/bits/alloc_traits.h:383\r\n  4: std::_Rb_tree&lt;std::string, std::pair&lt;std::string const, std::string&gt;, std::_Select1st&lt;std::pair&lt;std::string const, std::string&gt; &gt;, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::_M_put_node(std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt;*) in /usr/include/c++/4.9/bits/stl_tree.h:389\r\n  5: std::_Rb_tree&lt;std::string, std::pair&lt;std::string const, std::string&gt;, std::_Select1st&lt;std::pair&lt;std::string const, std::string&gt; &gt;, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::_M_destroy_node(std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt;*) in /usr/include/c++/4.9/bits/stl_tree.h:438\r\n  6: std::_Rb_tree&lt;std::string, std::pair&lt;std::string const, std::string&gt;, std::_Select1st&lt;std::pair&lt;std::string const, std::string&gt; &gt;, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::_M_erase(std::_Rb_tree_node&lt;std::pair&lt;std::string const, std::string&gt; &gt;*) in /usr/include/c++/4.9/bits/stl_tree.h:1247\r\n  7: std::_Rb_tree&lt;std::string, std::pair&lt;std::string const, std::string&gt;, std::_Select1st&lt;std::pair&lt;std::string const, std::string&gt; &gt;, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::~_Rb_tree() in /usr/include/c++/4.9/bits/stl_tree.h:715\r\n  8: std::map&lt;std::string, std::string, std::less&lt;std::string&gt;, std::allocator&lt;std::pair&lt;std::string const, std::string&gt; &gt; &gt;::~map() in /usr/include/c++/4.9/bits/stl_map.h:96\r\n  9: __run_exit_handlers in /build/buildd/glibc-2.21/stdlib/exit.c:82\r\n  10: exit in /build/buildd/glibc-2.21/stdlib/exit.c:104\r\n  11: (below main) in /build/buildd/glibc-2.21/csu/libc-start.c:323\r\n```\r\n\r\nWe've seen already a couple of problems with the global initialization order. With this fix, the test execute is stable now at least on my local machine. Still it's not 100% sure that there are not more problems.\r\n\r\n@notspiff, @afedchin ping.","created_at":"2016-02-15T23:55:10Z","updated_at":"2016-02-16T08:53:46Z","closed_at":null,"merged_at":null,"merge_commit_sha":"cc0594f3f3c206cda55c7f069acd695a4e8eacea","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/xbmc/xbmc/pulls/9146/commits","review_comments_url":"https://api.github.com/repos/xbmc/xbmc/pulls/9146/comments","review_comment_url":"https://api.github.com/repos/xbmc/xbmc/pulls/comments{/number}","comments_url":"https://api.github.com/repos/xbmc/xbmc/issues/9146/comments","statuses_url":"https://api.github.com/repos/xbmc/xbmc/statuses/53cc8be9aa47f6b50068bc50b9f4f9ddc566a22a","head":{"label":"fetzerch:cmake-fix-tests","ref":"cmake-fix-tests","sha":"53cc8be9aa47f6b50068bc50b9f4f9ddc566a22a","user":{"login":"fetzerch","id":1133994,"avatar_url":"https://avatars.githubusercontent.com/u/1133994?v=3","gravatar_id":"","url":"https://api.github.com/users/fetzerch","html_url":"https://github.com/fetzerch","followers_url":"https://api.github.com/users/fetzerch/followers","following_url":"https://api.github.com/users/fetzerch/following{/other_user}","gists_url":"https://api.github.com/users/fetzerch/gists{/gist_id}","starred_url":"https://api.github.com/users/fetzerch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fetzerch/subscriptions","organizations_url":"https://api.github.com/users/fetzerch/orgs","repos_url":"https://api.github.com/users/fetzerch/repos","events_url":"https://api.github.com/users/fetzerch/events{/privacy}","received_events_url":"https://api.github.com/users/fetzerch/received_events","type":"User","site_admin":false},"repo":{"id":2594230,"name":"xbmc","full_name":"fetzerch/xbmc","owner":{"login":"fetzerch","id":1133994,"avatar_url":"https://avatars.githubusercontent.com/u/1133994?v=3","gravatar_id":"","url":"https://api.github.com/users/fetzerch","html_url":"https://github.com/fetzerch","followers_url":"https://api.github.com/users/fetzerch/followers","following_url":"https://api.github.com/users/fetzerch/following{/other_user}","gists_url":"https://api.github.com/users/fetzerch/gists{/gist_id}","starred_url":"https://api.github.com/users/fetzerch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fetzerch/subscriptions","organizations_url":"https://api.github.com/users/fetzerch/orgs","repos_url":"https://api.github.com/users/fetzerch/repos","events_url":"https://api.github.com/users/fetzerch/events{/privacy}","received_events_url":"https://api.github.com/users/fetzerch/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/fetzerch/xbmc","description":"XBMC Main Repository","fork":true,"url":"https://api.github.com/repos/fetzerch/xbmc","forks_url":"https://api.github.com/repos/fetzerch/xbmc/forks","keys_url":"https://api.github.com/repos/fetzerch/xbmc/keys{/key_id}","collaborators_url":"https://api.github.com/repos/fetzerch/xbmc/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/fetzerch/xbmc/teams","hooks_url":"https://api.github.com/repos/fetzerch/xbmc/hooks","issue_events_url":"https://api.github.com/repos/fetzerch/xbmc/issues/events{/number}","events_url":"https://api.github.com/repos/fetzerch/xbmc/events","assignees_url":"https://api.github.com/repos/fetzerch/xbmc/assignees{/user}","branches_url":"https://api.github.com/repos/fetzerch/xbmc/branches{/branch}","tags_url":"https://api.github.com/repos/fetzerch/xbmc/tags","blobs_url":"https://api.github.com/repos/fetzerch/xbmc/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/fetzerch/xbmc/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/fetzerch/xbmc/git/refs{/sha}","trees_url":"https://api.github.com/repos/fetzerch/xbmc/git/trees{/sha}","statuses_url":"https://api.github.com/repos/fetzerch/xbmc/statuses/{sha}","languages_url":"https://api.github.com/repos/fetzerch/xbmc/languages","stargazers_url":"https://api.github.com/repos/fetzerch/xbmc/stargazers","contributors_url":"https://api.github.com/repos/fetzerch/xbmc/contributors","subscribers_url":"https://api.github.com/repos/fetzerch/xbmc/subscribers","subscription_url":"https://api.github.com/repos/fetzerch/xbmc/subscription","commits_url":"https://api.github.com/repos/fetzerch/xbmc/commits{/sha}","git_commits_url":"https://api.github.com/repos/fetzerch/xbmc/git/commits{/sha}","comments_url":"https://api.github.com/repos/fetzerch/xbmc/comments{/number}","issue_comment_url":"https://api.github.com/repos/fetzerch/xbmc/issues/comments{/number}","contents_url":"https://api.github.com/repos/fetzerch/xbmc/contents/{+path}","compare_url":"https://api.github.com/repos/fetzerch/xbmc/compare/{base}...{head}","merges_url":"https://api.github.com/repos/fetzerch/xbmc/merges","archive_url":"https://api.github.com/repos/fetzerch/xbmc/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/fetzerch/xbmc/downloads","issues_url":"https://api.github.com/repos/fetzerch/xbmc/issues{/number}","pulls_url":"https://api.github.com/repos/fetzerch/xbmc/pulls{/number}","milestones_url":"https://api.github.com/repos/fetzerch/xbmc/milestones{/number}","notifications_url":"https://api.github.com/repos/fetzerch/xbmc/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/fetzerch/xbmc/labels{/name}","releases_url":"https://api.github.com/repos/fetzerch/xbmc/releases{/id}","deployments_url":"https://api.github.com/repos/fetzerch/xbmc/deployments","created_at":"2011-10-17T19:26:07Z","updated_at":"2013-12-10T20:34:31Z","pushed_at":"2016-02-16T07:14:47Z","git_url":"git://github.com/fetzerch/xbmc.git","ssh_url":"git@github.com:fetzerch/xbmc.git","clone_url":"https://github.com/fetzerch/xbmc.git","svn_url":"https://github.com/fetzerch/xbmc","homepage":"http://xbmc.org","size":518952,"stargazers_count":2,"watchers_count":2,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"xbmc:master","ref":"master","sha":"0871790e607221de12c6d58d00c553a549e3d008","user":{"login":"xbmc","id":199122,"avatar_url":"https://avatars.githubusercontent.com/u/199122?v=3","gravatar_id":"","url":"https://api.github.com/users/xbmc","html_url":"https://github.com/xbmc","followers_url":"https://api.github.com/users/xbmc/followers","following_url":"https://api.github.com/users/xbmc/following{/other_user}","gists_url":"https://api.github.com/users/xbmc/gists{/gist_id}","starred_url":"https://api.github.com/users/xbmc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xbmc/subscriptions","organizations_url":"https://api.github.com/users/xbmc/orgs","repos_url":"https://api.github.com/users/xbmc/repos","events_url":"https://api.github.com/users/xbmc/events{/privacy}","received_events_url":"https://api.github.com/users/xbmc/received_events","type":"Organization","site_admin":false},"repo":{"id":1217614,"name":"xbmc","full_name":"xbmc/xbmc","owner":{"login":"xbmc","id":199122,"avatar_url":"https://avatars.githubusercontent.com/u/199122?v=3","gravatar_id":"","url":"https://api.github.com/users/xbmc","html_url":"https://github.com/xbmc","followers_url":"https://api.github.com/users/xbmc/followers","following_url":"https://api.github.com/users/xbmc/following{/other_user}","gists_url":"https://api.github.com/users/xbmc/gists{/gist_id}","starred_url":"https://api.github.com/users/xbmc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xbmc/subscriptions","organizations_url":"https://api.github.com/users/xbmc/orgs","repos_url":"https://api.github.com/users/xbmc/repos","events_url":"https://api.github.com/users/xbmc/events{/privacy}","received_events_url":"https://api.github.com/users/xbmc/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/xbmc/xbmc","description":"Kodi Main Repository - By using this code you agree with our policy and will follow the GPLv2 license as included","fork":false,"url":"https://api.github.com/repos/xbmc/xbmc","forks_url":"https://api.github.com/repos/xbmc/xbmc/forks","keys_url":"https://api.github.com/repos/xbmc/xbmc/keys{/key_id}","collaborators_url":"https://api.github.com/repos/xbmc/xbmc/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/xbmc/xbmc/teams","hooks_url":"https://api.github.com/repos/xbmc/xbmc/hooks","issue_events_url":"https://api.github.com/repos/xbmc/xbmc/issues/events{/number}","events_url":"https://api.github.com/repos/xbmc/xbmc/events","assignees_url":"https://api.github.com/repos/xbmc/xbmc/assignees{/user}","branches_url":"https://api.github.com/repos/xbmc/xbmc/branches{/branch}","tags_url":"https://api.github.com/repos/xbmc/xbmc/tags","blobs_url":"https://api.github.com/repos/xbmc/xbmc/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/xbmc/xbmc/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/xbmc/xbmc/git/refs{/sha}","trees_url":"https://api.github.com/repos/xbmc/xbmc/git/trees{/sha}","statuses_url":"https://api.github.com/repos/xbmc/xbmc/statuses/{sha}","languages_url":"https://api.github.com/repos/xbmc/xbmc/languages","stargazers_url":"https://api.github.com/repos/xbmc/xbmc/stargazers","contributors_url":"https://api.github.com/repos/xbmc/xbmc/contributors","subscribers_url":"https://api.github.com/repos/xbmc/xbmc/subscribers","subscription_url":"https://api.github.com/repos/xbmc/xbmc/subscription","commits_url":"https://api.github.com/repos/xbmc/xbmc/commits{/sha}","git_commits_url":"https://api.github.com/repos/xbmc/xbmc/git/commits{/sha}","comments_url":"https://api.github.com/repos/xbmc/xbmc/comments{/number}","issue_comment_url":"https://api.github.com/repos/xbmc/xbmc/issues/comments{/number}","contents_url":"https://api.github.com/repos/xbmc/xbmc/contents/{+path}","compare_url":"https://api.github.com/repos/xbmc/xbmc/compare/{base}...{head}","merges_url":"https://api.github.com/repos/xbmc/xbmc/merges","archive_url":"https://api.github.com/repos/xbmc/xbmc/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/xbmc/xbmc/downloads","issues_url":"https://api.github.com/repos/xbmc/xbmc/issues{/number}","pulls_url":"https://api.github.com/repos/xbmc/xbmc/pulls{/number}","milestones_url":"https://api.github.com/repos/xbmc/xbmc/milestones{/number}","notifications_url":"https://api.github.com/repos/xbmc/xbmc/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/xbmc/xbmc/labels{/name}","releases_url":"https://api.github.com/repos/xbmc/xbmc/releases{/id}","deployments_url":"https://api.github.com/repos/xbmc/xbmc/deployments","created_at":"2011-01-03T21:18:51Z","updated_at":"2016-02-16T06:27:57Z","pushed_at":"2016-02-16T08:02:52Z","git_url":"git://github.com/xbmc/xbmc.git","ssh_url":"git@github.com:xbmc/xbmc.git","clone_url":"https://github.com/xbmc/xbmc.git","svn_url":"https://github.com/xbmc/xbmc","homepage":"http://kodi.wiki/view/Official:Trademark_Policy","size":1717414,"stargazers_count":4499,"watchers_count":4499,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":3317,"mirror_url":null,"open_issues_count":221,"forks":3317,"open_issues":221,"watchers":4499,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/xbmc/xbmc/pulls/9146"},"html":{"href":"https://github.com/xbmc/xbmc/pull/9146"},"issue":{"href":"https://api.github.com/repos/xbmc/xbmc/issues/9146"},"comments":{"href":"https://api.github.com/repos/xbmc/xbmc/issues/9146/comments"},"review_comments":{"href":"https://api.github.com/repos/xbmc/xbmc/pulls/9146/comments"},"review_comment":{"href":"https://api.github.com/repos/xbmc/xbmc/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/xbmc/xbmc/pulls/9146/commits"},"statuses":{"href":"https://api.github.com/repos/xbmc/xbmc/statuses/53cc8be9aa47f6b50068bc50b9f4f9ddc566a22a"}}}}