GitHub PullRequestReviewCommentEvent at 2014-11-28 15:07:17
Repository: sope
Actor: sixstone-qq
Payload: {"action":"created","comment":{"url":"https://api.github.com/repos/inverse-inc/sope/pulls/comments/21035429","id":21035429,"diff_hunk":"@@ -117,9 +113,13 @@ - (NSData *)dataByEncodingQuotedPrintable {\n \n   desLen = NGEncodeQuotedPrintable(bytes, length, des, desLen);\n \n-  return (int)desLen != -1\n-    ? [NSData dataWithBytesNoCopy:des length:desLen]\n-    : nil;\n+  if ((int)desLen == -1)\n+    {\n+      NGFree(des);","path":"sope-core/NGExtensions/NGQuotedPrintableCoding.m","position":101,"original_position":101,"commit_id":"b5df88d932369b576619db9ad26b5d9ebd6517cb","original_commit_id":"b5df88d932369b576619db9ad26b5d9ebd6517cb","user":{"login":"sixstone-qq","id":440508,"avatar_url":"https://avatars.githubusercontent.com/u/440508?v=3","gravatar_id":"","url":"https://api.github.com/users/sixstone-qq","html_url":"https://github.com/sixstone-qq","followers_url":"https://api.github.com/users/sixstone-qq/followers","following_url":"https://api.github.com/users/sixstone-qq/following{/other_user}","gists_url":"https://api.github.com/users/sixstone-qq/gists{/gist_id}","starred_url":"https://api.github.com/users/sixstone-qq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sixstone-qq/subscriptions","organizations_url":"https://api.github.com/users/sixstone-qq/orgs","repos_url":"https://api.github.com/users/sixstone-qq/repos","events_url":"https://api.github.com/users/sixstone-qq/events{/privacy}","received_events_url":"https://api.github.com/users/sixstone-qq/received_events","type":"User","site_admin":false},"body":"This is the counterpart of `NGMallocAtomic` macro which des is allocated from.\r\n\r\nSee https://github.com/inverse-inc/sope/blob/master/sope-core/NGExtensions/NGExtensions/NGMemoryAllocation.h#L34 for details.","created_at":"2014-11-28T15:07:17Z","updated_at":"2014-11-28T15:07:17Z","html_url":"https://github.com/inverse-inc/sope/pull/15#discussion_r21035429","pull_request_url":"https://api.github.com/repos/inverse-inc/sope/pulls/15","_links":{"self":{"href":"https://api.github.com/repos/inverse-inc/sope/pulls/comments/21035429"},"html":{"href":"https://github.com/inverse-inc/sope/pull/15#discussion_r21035429"},"pull_request":{"href":"https://api.github.com/repos/inverse-inc/sope/pulls/15"}}},"pull_request":{"url":"https://api.github.com/repos/inverse-inc/sope/pulls/15","id":25185523,"html_url":"https://github.com/inverse-inc/sope/pull/15","diff_url":"https://github.com/inverse-inc/sope/pull/15.diff","patch_url":"https://github.com/inverse-inc/sope/pull/15.patch","issue_url":"https://api.github.com/repos/inverse-inc/sope/issues/15","number":15,"state":"open","locked":false,"title":"Fix memory leak when failing to decode/encode a quoted printable","user":{"login":"sixstone-qq","id":440508,"avatar_url":"https://avatars.githubusercontent.com/u/440508?v=3","gravatar_id":"","url":"https://api.github.com/users/sixstone-qq","html_url":"https://github.com/sixstone-qq","followers_url":"https://api.github.com/users/sixstone-qq/followers","following_url":"https://api.github.com/users/sixstone-qq/following{/other_user}","gists_url":"https://api.github.com/users/sixstone-qq/gists{/gist_id}","starred_url":"https://api.github.com/users/sixstone-qq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sixstone-qq/subscriptions","organizations_url":"https://api.github.com/users/sixstone-qq/orgs","repos_url":"https://api.github.com/users/sixstone-qq/repos","events_url":"https://api.github.com/users/sixstone-qq/events{/privacy}","received_events_url":"https://api.github.com/users/sixstone-qq/received_events","type":"User","site_admin":false},"body":"Valgrind report:\r\n\r\n   604 bytes in 1 blocks are definitely lost in loss record 8,010 of 10,179\r\n      at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n      by 0x2BF73131: _i_NSData_QuotedPrintableCoding_dataByDecodingQuotedPrintableTransferEncoding (in /usr/lib/libNGExtensions.so.4.9.203)\r\n      by 0x3375053E: _i_NSData_SOGoMailUtilities_bodyDataFromEncoding_ (in /usr/lib/GNUstep/SOGo/Mailer.SOGo/Mailer)\r\n      by 0x34D23B46: _i_MAPIStoreMailMessage__setBodyContentFromRawData_ (in /usr/lib/GNUstep/SOGo/SOGoBackend.MAPIStore/SOGoBackend)\r\n      by 0x34D1DD0A: _i_MAPIStoreMailFolder__lookupMessage_ (in /usr/lib/GNUstep/SOGo/SOGoBackend.MAPIStore/SOGoBackend)\r\n      by 0x34CF4312: _i_MAPIStoreFolder__lookupMessageByURL_ (in /usr/lib/GNUstep/SOGo/SOGoBackend.MAPIStore/SOGoBackend)\r\n      by 0x34CF497A: _i_MAPIStoreFolder__openMessage_withMID_forWriting_inMemCtx_ (in /usr/lib/GNUstep/SOGo/SOGoBackend.MAPIStore/SOGoBackend)\r\n      by 0x2A5D5013: sogo_folder_open_message (in /usr/lib/x86_64-linux-gnu/mapistore_backends/libMAPIStoreSOGo.so.1.0.0)\r\n\r\n+ removing trailing whitespaces.","created_at":"2014-11-28T09:36:25Z","updated_at":"2014-11-28T15:07:17Z","closed_at":null,"merged_at":null,"merge_commit_sha":"3b9b013b16f7d5eb1cd7d660b7d2c14b10d52f72","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/inverse-inc/sope/pulls/15/commits","review_comments_url":"https://api.github.com/repos/inverse-inc/sope/pulls/15/comments","review_comment_url":"https://api.github.com/repos/inverse-inc/sope/pulls/comments/{number}","comments_url":"https://api.github.com/repos/inverse-inc/sope/issues/15/comments","statuses_url":"https://api.github.com/repos/inverse-inc/sope/statuses/b5df88d932369b576619db9ad26b5d9ebd6517cb","head":{"label":"Zentyal:ejhernandez/fix-memory-leak-when-non-decoding-quoted-printable","ref":"ejhernandez/fix-memory-leak-when-non-decoding-quoted-printable","sha":"b5df88d932369b576619db9ad26b5d9ebd6517cb","user":{"login":"Zentyal","id":491690,"avatar_url":"https://avatars.githubusercontent.com/u/491690?v=3","gravatar_id":"","url":"https://api.github.com/users/Zentyal","html_url":"https://github.com/Zentyal","followers_url":"https://api.github.com/users/Zentyal/followers","following_url":"https://api.github.com/users/Zentyal/following{/other_user}","gists_url":"https://api.github.com/users/Zentyal/gists{/gist_id}","starred_url":"https://api.github.com/users/Zentyal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Zentyal/subscriptions","organizations_url":"https://api.github.com/users/Zentyal/orgs","repos_url":"https://api.github.com/users/Zentyal/repos","events_url":"https://api.github.com/users/Zentyal/events{/privacy}","received_events_url":"https://api.github.com/users/Zentyal/received_events","type":"Organization","site_admin":false},"repo":{"id":17172479,"name":"sope","full_name":"Zentyal/sope","owner":{"login":"Zentyal","id":491690,"avatar_url":"https://avatars.githubusercontent.com/u/491690?v=3","gravatar_id":"","url":"https://api.github.com/users/Zentyal","html_url":"https://github.com/Zentyal","followers_url":"https://api.github.com/users/Zentyal/followers","following_url":"https://api.github.com/users/Zentyal/following{/other_user}","gists_url":"https://api.github.com/users/Zentyal/gists{/gist_id}","starred_url":"https://api.github.com/users/Zentyal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Zentyal/subscriptions","organizations_url":"https://api.github.com/users/Zentyal/orgs","repos_url":"https://api.github.com/users/Zentyal/repos","events_url":"https://api.github.com/users/Zentyal/events{/privacy}","received_events_url":"https://api.github.com/users/Zentyal/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Zentyal/sope","description":"SOPE is an extensive set of frameworks which form a complete Web application server environment. Besides the Apple WebObjects compatible appserver extended with Zope concepts, it contains a large set of reusable classes: XML processing (SAX, DOM, XML-RPC), MIME/IMAP4 processing, LDAP connectivity, RDBMS connectivity, and iCalendar parsing.","fork":true,"url":"https://api.github.com/repos/Zentyal/sope","forks_url":"https://api.github.com/repos/Zentyal/sope/forks","keys_url":"https://api.github.com/repos/Zentyal/sope/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Zentyal/sope/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Zentyal/sope/teams","hooks_url":"https://api.github.com/repos/Zentyal/sope/hooks","issue_events_url":"https://api.github.com/repos/Zentyal/sope/issues/events{/number}","events_url":"https://api.github.com/repos/Zentyal/sope/events","assignees_url":"https://api.github.com/repos/Zentyal/sope/assignees{/user}","branches_url":"https://api.github.com/repos/Zentyal/sope/branches{/branch}","tags_url":"https://api.github.com/repos/Zentyal/sope/tags","blobs_url":"https://api.github.com/repos/Zentyal/sope/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Zentyal/sope/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Zentyal/sope/git/refs{/sha}","trees_url":"https://api.github.com/repos/Zentyal/sope/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Zentyal/sope/statuses/{sha}","languages_url":"https://api.github.com/repos/Zentyal/sope/languages","stargazers_url":"https://api.github.com/repos/Zentyal/sope/stargazers","contributors_url":"https://api.github.com/repos/Zentyal/sope/contributors","subscribers_url":"https://api.github.com/repos/Zentyal/sope/subscribers","subscription_url":"https://api.github.com/repos/Zentyal/sope/subscription","commits_url":"https://api.github.com/repos/Zentyal/sope/commits{/sha}","git_commits_url":"https://api.github.com/repos/Zentyal/sope/git/commits{/sha}","comments_url":"https://api.github.com/repos/Zentyal/sope/comments{/number}","issue_comment_url":"https://api.github.com/repos/Zentyal/sope/issues/comments/{number}","contents_url":"https://api.github.com/repos/Zentyal/sope/contents/{+path}","compare_url":"https://api.github.com/repos/Zentyal/sope/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Zentyal/sope/merges","archive_url":"https://api.github.com/repos/Zentyal/sope/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Zentyal/sope/downloads","issues_url":"https://api.github.com/repos/Zentyal/sope/issues{/number}","pulls_url":"https://api.github.com/repos/Zentyal/sope/pulls{/number}","milestones_url":"https://api.github.com/repos/Zentyal/sope/milestones{/number}","notifications_url":"https://api.github.com/repos/Zentyal/sope/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Zentyal/sope/labels{/name}","releases_url":"https://api.github.com/repos/Zentyal/sope/releases{/id}","created_at":"2014-02-25T12:38:47Z","updated_at":"2014-11-27T10:02:14Z","pushed_at":"2014-11-28T09:42:23Z","git_url":"git://github.com/Zentyal/sope.git","ssh_url":"git@github.com:Zentyal/sope.git","clone_url":"https://github.com/Zentyal/sope.git","svn_url":"https://github.com/Zentyal/sope","homepage":"http://sogo.nu/","size":10959,"stargazers_count":1,"watchers_count":1,"language":"Objective-C","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":1,"forks":1,"open_issues":1,"watchers":1,"default_branch":"master"}},"base":{"label":"inverse-inc:master","ref":"master","sha":"8b1259f206a1224c31f4767f438e510d9bbb7429","user":{"login":"inverse-inc","id":1203154,"avatar_url":"https://avatars.githubusercontent.com/u/1203154?v=3","gravatar_id":"","url":"https://api.github.com/users/inverse-inc","html_url":"https://github.com/inverse-inc","followers_url":"https://api.github.com/users/inverse-inc/followers","following_url":"https://api.github.com/users/inverse-inc/following{/other_user}","gists_url":"https://api.github.com/users/inverse-inc/gists{/gist_id}","starred_url":"https://api.github.com/users/inverse-inc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inverse-inc/subscriptions","organizations_url":"https://api.github.com/users/inverse-inc/orgs","repos_url":"https://api.github.com/users/inverse-inc/repos","events_url":"https://api.github.com/users/inverse-inc/events{/privacy}","received_events_url":"https://api.github.com/users/inverse-inc/received_events","type":"Organization","site_admin":false},"repo":{"id":5855828,"name":"sope","full_name":"inverse-inc/sope","owner":{"login":"inverse-inc","id":1203154,"avatar_url":"https://avatars.githubusercontent.com/u/1203154?v=3","gravatar_id":"","url":"https://api.github.com/users/inverse-inc","html_url":"https://github.com/inverse-inc","followers_url":"https://api.github.com/users/inverse-inc/followers","following_url":"https://api.github.com/users/inverse-inc/following{/other_user}","gists_url":"https://api.github.com/users/inverse-inc/gists{/gist_id}","starred_url":"https://api.github.com/users/inverse-inc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inverse-inc/subscriptions","organizations_url":"https://api.github.com/users/inverse-inc/orgs","repos_url":"https://api.github.com/users/inverse-inc/repos","events_url":"https://api.github.com/users/inverse-inc/events{/privacy}","received_events_url":"https://api.github.com/users/inverse-inc/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/inverse-inc/sope","description":"SOPE is an extensive set of frameworks which form a complete Web application server environment. Besides the Apple WebObjects compatible appserver extended with Zope concepts, it contains a large set of reusable classes: XML processing (SAX, DOM, XML-RPC), MIME/IMAP4 processing, LDAP connectivity, RDBMS connectivity, and iCalendar parsing.","fork":false,"url":"https://api.github.com/repos/inverse-inc/sope","forks_url":"https://api.github.com/repos/inverse-inc/sope/forks","keys_url":"https://api.github.com/repos/inverse-inc/sope/keys{/key_id}","collaborators_url":"https://api.github.com/repos/inverse-inc/sope/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/inverse-inc/sope/teams","hooks_url":"https://api.github.com/repos/inverse-inc/sope/hooks","issue_events_url":"https://api.github.com/repos/inverse-inc/sope/issues/events{/number}","events_url":"https://api.github.com/repos/inverse-inc/sope/events","assignees_url":"https://api.github.com/repos/inverse-inc/sope/assignees{/user}","branches_url":"https://api.github.com/repos/inverse-inc/sope/branches{/branch}","tags_url":"https://api.github.com/repos/inverse-inc/sope/tags","blobs_url":"https://api.github.com/repos/inverse-inc/sope/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/inverse-inc/sope/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/inverse-inc/sope/git/refs{/sha}","trees_url":"https://api.github.com/repos/inverse-inc/sope/git/trees{/sha}","statuses_url":"https://api.github.com/repos/inverse-inc/sope/statuses/{sha}","languages_url":"https://api.github.com/repos/inverse-inc/sope/languages","stargazers_url":"https://api.github.com/repos/inverse-inc/sope/stargazers","contributors_url":"https://api.github.com/repos/inverse-inc/sope/contributors","subscribers_url":"https://api.github.com/repos/inverse-inc/sope/subscribers","subscription_url":"https://api.github.com/repos/inverse-inc/sope/subscription","commits_url":"https://api.github.com/repos/inverse-inc/sope/commits{/sha}","git_commits_url":"https://api.github.com/repos/inverse-inc/sope/git/commits{/sha}","comments_url":"https://api.github.com/repos/inverse-inc/sope/comments{/number}","issue_comment_url":"https://api.github.com/repos/inverse-inc/sope/issues/comments/{number}","contents_url":"https://api.github.com/repos/inverse-inc/sope/contents/{+path}","compare_url":"https://api.github.com/repos/inverse-inc/sope/compare/{base}...{head}","merges_url":"https://api.github.com/repos/inverse-inc/sope/merges","archive_url":"https://api.github.com/repos/inverse-inc/sope/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/inverse-inc/sope/downloads","issues_url":"https://api.github.com/repos/inverse-inc/sope/issues{/number}","pulls_url":"https://api.github.com/repos/inverse-inc/sope/pulls{/number}","milestones_url":"https://api.github.com/repos/inverse-inc/sope/milestones{/number}","notifications_url":"https://api.github.com/repos/inverse-inc/sope/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/inverse-inc/sope/labels{/name}","releases_url":"https://api.github.com/repos/inverse-inc/sope/releases{/id}","created_at":"2012-09-18T12:16:13Z","updated_at":"2014-11-27T20:18:31Z","pushed_at":"2014-11-27T20:18:30Z","git_url":"git://github.com/inverse-inc/sope.git","ssh_url":"git@github.com:inverse-inc/sope.git","clone_url":"https://github.com/inverse-inc/sope.git","svn_url":"https://github.com/inverse-inc/sope","homepage":"http://sogo.nu/","size":13743,"stargazers_count":15,"watchers_count":15,"language":"Objective-C","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":14,"mirror_url":null,"open_issues_count":2,"forks":14,"open_issues":2,"watchers":15,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/inverse-inc/sope/pulls/15"},"html":{"href":"https://github.com/inverse-inc/sope/pull/15"},"issue":{"href":"https://api.github.com/repos/inverse-inc/sope/issues/15"},"comments":{"href":"https://api.github.com/repos/inverse-inc/sope/issues/15/comments"},"review_comments":{"href":"https://api.github.com/repos/inverse-inc/sope/pulls/15/comments"},"review_comment":{"href":"https://api.github.com/repos/inverse-inc/sope/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/inverse-inc/sope/pulls/15/commits"},"statuses":{"href":"https://api.github.com/repos/inverse-inc/sope/statuses/b5df88d932369b576619db9ad26b5d9ebd6517cb"}}}}