{"action":"created","issue":{"url":"https://api.github.com/repos/mer-qt/qtbase/issues/30","labels_url":"https://api.github.com/repos/mer-qt/qtbase/issues/30/labels{/name}","comments_url":"https://api.github.com/repos/mer-qt/qtbase/issues/30/comments","events_url":"https://api.github.com/repos/mer-qt/qtbase/issues/30/events","html_url":"https://github.com/mer-qt/qtbase/pull/30","id":60250825,"number":30,"title":"Don't use QStringLiteral in dynamically unloadable code","user":{"login":"monich","id":5909522,"avatar_url":"https://avatars.githubusercontent.com/u/5909522?v=3","gravatar_id":"","url":"https://api.github.com/users/monich","html_url":"https://github.com/monich","followers_url":"https://api.github.com/users/monich/followers","following_url":"https://api.github.com/users/monich/following{/other_user}","gists_url":"https://api.github.com/users/monich/gists{/gist_id}","starred_url":"https://api.github.com/users/monich/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/monich/subscriptions","organizations_url":"https://api.github.com/users/monich/orgs","repos_url":"https://api.github.com/users/monich/repos","events_url":"https://api.github.com/users/monich/events{/privacy}","received_events_url":"https://api.github.com/users/monich/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-03-08T10:31:41Z","updated_at":"2015-03-09T11:21:23Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/mer-qt/qtbase/pulls/30","html_url":"https://github.com/mer-qt/qtbase/pull/30","diff_url":"https://github.com/mer-qt/qtbase/pull/30.diff","patch_url":"https://github.com/mer-qt/qtbase/pull/30.patch"},"body":"QStringLiteral generates a QString::Data block with -1 ref count which lives somewhere in the data section of libqconnmanbearer.so and gets unmapped as soon as plugin is unloaded. However, pointers to these static QString::Data blocks get carried along with QDBusPendingCall and may outlive the data section they point to. That results in a crash, typically on exit."},"comment":{"url":"https://api.github.com/repos/mer-qt/qtbase/issues/comments/77836601","html_url":"https://github.com/mer-qt/qtbase/pull/30#issuecomment-77836601","issue_url":"https://api.github.com/repos/mer-qt/qtbase/issues/30","id":77836601,"user":{"login":"monich","id":5909522,"avatar_url":"https://avatars.githubusercontent.com/u/5909522?v=3","gravatar_id":"","url":"https://api.github.com/users/monich","html_url":"https://github.com/monich","followers_url":"https://api.github.com/users/monich/followers","following_url":"https://api.github.com/users/monich/following{/other_user}","gists_url":"https://api.github.com/users/monich/gists{/gist_id}","starred_url":"https://api.github.com/users/monich/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/monich/subscriptions","organizations_url":"https://api.github.com/users/monich/orgs","repos_url":"https://api.github.com/users/monich/repos","events_url":"https://api.github.com/users/monich/events{/privacy}","received_events_url":"https://api.github.com/users/monich/received_events","type":"User","site_admin":false},"created_at":"2015-03-09T11:21:23Z","updated_at":"2015-03-09T11:21:23Z","body":"I don't really want to talk, I want it to get fixed. And I don't particularly care how it gets fixed. There have been enough talking about it at https://codereview.qt-project.org/#/c/95607/ and that didn't fix the problem. Even more talking won't fix it either.\r\n\r\nPlease take this patch as is or fix the problem yourself the way you prefer. Either do something about it or let somebody do something about it.\r\n\r\nThe fact that no one came up with a better solution since Sep 24, 2014 means that either 1) there's no better solution or 2) nobody has time to implement a better solution. You can look at this patch as a workaround until a better solution is found. But please do something. People are wasting time debugging these crashes."}}