{"action":"created","comment":{"url":"https://api.github.com/repos/fontforge/fontforge/pulls/comments/32180781","id":32180781,"diff_hunk":"@@ -7580,14 +7579,9 @@ Py_RETURN( self );\n static PyObject *PyFFGlyph_autoTrace(PyObject *self, PyObject *UNUSED(args)) {\n     SplineChar *sc = ((PyFF_Glyph *) self)->sc;\n     int layer = ((PyFF_Glyph *) self)->layer;\n-    char **at_args;\n-\n-    at_args = AutoTraceArgs(false);\n-    if ( at_args==(char **) -1 ) {\n-\tPyErr_Format(PyExc_EnvironmentError, \"Bad autotrace args\" );\n-return(NULL);","path":"fontforge/python.c","position":44,"original_position":44,"commit_id":"8a864c82fa3142b2cd6e30c14300d5645f7e60d8","original_commit_id":"8a864c82fa3142b2cd6e30c14300d5645f7e60d8","user":{"login":"jtanx","id":5137410,"avatar_url":"https://avatars.githubusercontent.com/u/5137410?v=3","gravatar_id":"","url":"https://api.github.com/users/jtanx","html_url":"https://github.com/jtanx","followers_url":"https://api.github.com/users/jtanx/followers","following_url":"https://api.github.com/users/jtanx/following{/other_user}","gists_url":"https://api.github.com/users/jtanx/gists{/gist_id}","starred_url":"https://api.github.com/users/jtanx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jtanx/subscriptions","organizations_url":"https://api.github.com/users/jtanx/orgs","repos_url":"https://api.github.com/users/jtanx/repos","events_url":"https://api.github.com/users/jtanx/events{/privacy}","received_events_url":"https://api.github.com/users/jtanx/received_events","type":"User","site_admin":false},"body":"Personal preference I mostly, but it seemed to be breaking encapsulation - outside of `python.c`, `_SCAutoTrace` and `AutoTraceArgs` are only ever called in `autotrace.c`. Plus by calling `_SCAutoTrace` directly, it misses [other checks](https://github.com/jtanx/fontforge/blob/unidir/fontforge/autotrace.c#L487) that are made in `SCAutoTrace`.\r\n\r\nSo I guess right it's a tradeoff between less informative error messages and more error checking.","created_at":"2015-06-11T00:29:30Z","updated_at":"2015-06-11T00:29:30Z","html_url":"https://github.com/fontforge/fontforge/pull/2299#discussion_r32180781","pull_request_url":"https://api.github.com/repos/fontforge/fontforge/pulls/2299","_links":{"self":{"href":"https://api.github.com/repos/fontforge/fontforge/pulls/comments/32180781"},"html":{"href":"https://github.com/fontforge/fontforge/pull/2299#discussion_r32180781"},"pull_request":{"href":"https://api.github.com/repos/fontforge/fontforge/pulls/2299"}}},"pull_request":{"url":"https://api.github.com/repos/fontforge/fontforge/pulls/2299","id":36501098,"html_url":"https://github.com/fontforge/fontforge/pull/2299","diff_url":"https://github.com/fontforge/fontforge/pull/2299.diff","patch_url":"https://github.com/fontforge/fontforge/pull/2299.patch","issue_url":"https://api.github.com/repos/fontforge/fontforge/issues/2299","number":2299,"state":"open","locked":false,"title":"Multiple fixes","user":{"login":"jtanx","id":5137410,"avatar_url":"https://avatars.githubusercontent.com/u/5137410?v=3","gravatar_id":"","url":"https://api.github.com/users/jtanx","html_url":"https://github.com/jtanx","followers_url":"https://api.github.com/users/jtanx/followers","following_url":"https://api.github.com/users/jtanx/following{/other_user}","gists_url":"https://api.github.com/users/jtanx/gists{/gist_id}","starred_url":"https://api.github.com/users/jtanx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jtanx/subscriptions","organizations_url":"https://api.github.com/users/jtanx/orgs","repos_url":"https://api.github.com/users/jtanx/repos","events_url":"https://api.github.com/users/jtanx/events{/privacy}","received_events_url":"https://api.github.com/users/jtanx/received_events","type":"User","site_admin":false},"body":"Some work towards fixing #2290. Also fixes some other bugs along the way.\r\n\r\nGeneral direction: Use GLib for all actions that require interaction with the filesystem (still a long long way to go here) where possible.\r\nRationale: GLib properly handles unicode filenames (on Windows you give it a UTF-8 filename and it does the rest). It's way too much effort to have a separate codepath just for Windows.\r\n\r\n-------\r\n\r\nThis PR includes:\r\n* Fixing compiler warnings about collab code (use of `g_signal_new`). Requires testing by someone who uses collab.\r\n* Ignore more files from git history (ltargz.m4, uthash)\r\n* Removal of `mkdir_p` (use `g_mkdir_with_parents`) and `smprintf` (use `xasprintf`)\r\n* Replace usage of opendir with GLib equivalents (this is still ongoing)\r\n    * The file browser can now show Unicode filenames properly. You probably still can't open them though.\r\n* Fix bug in the autosave recover function on Windows. (Previously if you selected one of the 'Forget' options, it wouldn't forget the file because of an open file handle preventing deletion)\r\n* Fixing bug in saving hotkeys on Windows (for much the same reason as the autosave bug)\r\n* Getting rid of fork/exec in autotrace and using `g_spawn_sync` instead. This removes the Windows specific code path.\r\n* Porting the MetaFont import functionality to Windows. You need a LaTeX distribution installed (e.g. MikTeX) for this to work. Probably also fixed this process for files with spaces in their names.\r\n\r\ncc @frank-trampe ","created_at":"2015-05-29T12:38:53Z","updated_at":"2015-06-11T00:29:30Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f5e0772d3ca56ad60461826569dd3c7f096f340b","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/fontforge/fontforge/pulls/2299/commits","review_comments_url":"https://api.github.com/repos/fontforge/fontforge/pulls/2299/comments","review_comment_url":"https://api.github.com/repos/fontforge/fontforge/pulls/comments{/number}","comments_url":"https://api.github.com/repos/fontforge/fontforge/issues/2299/comments","statuses_url":"https://api.github.com/repos/fontforge/fontforge/statuses/8a864c82fa3142b2cd6e30c14300d5645f7e60d8","head":{"label":"jtanx:unidir","ref":"unidir","sha":"8a864c82fa3142b2cd6e30c14300d5645f7e60d8","user":{"login":"jtanx","id":5137410,"avatar_url":"https://avatars.githubusercontent.com/u/5137410?v=3","gravatar_id":"","url":"https://api.github.com/users/jtanx","html_url":"https://github.com/jtanx","followers_url":"https://api.github.com/users/jtanx/followers","following_url":"https://api.github.com/users/jtanx/following{/other_user}","gists_url":"https://api.github.com/users/jtanx/gists{/gist_id}","starred_url":"https://api.github.com/users/jtanx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jtanx/subscriptions","organizations_url":"https://api.github.com/users/jtanx/orgs","repos_url":"https://api.github.com/users/jtanx/repos","events_url":"https://api.github.com/users/jtanx/events{/privacy}","received_events_url":"https://api.github.com/users/jtanx/received_events","type":"User","site_admin":false},"repo":{"id":15699071,"name":"fontforge","full_name":"jtanx/fontforge","owner":{"login":"jtanx","id":5137410,"avatar_url":"https://avatars.githubusercontent.com/u/5137410?v=3","gravatar_id":"","url":"https://api.github.com/users/jtanx","html_url":"https://github.com/jtanx","followers_url":"https://api.github.com/users/jtanx/followers","following_url":"https://api.github.com/users/jtanx/following{/other_user}","gists_url":"https://api.github.com/users/jtanx/gists{/gist_id}","starred_url":"https://api.github.com/users/jtanx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jtanx/subscriptions","organizations_url":"https://api.github.com/users/jtanx/orgs","repos_url":"https://api.github.com/users/jtanx/repos","events_url":"https://api.github.com/users/jtanx/events{/privacy}","received_events_url":"https://api.github.com/users/jtanx/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jtanx/fontforge","description":"A font editor","fork":true,"url":"https://api.github.com/repos/jtanx/fontforge","forks_url":"https://api.github.com/repos/jtanx/fontforge/forks","keys_url":"https://api.github.com/repos/jtanx/fontforge/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jtanx/fontforge/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jtanx/fontforge/teams","hooks_url":"https://api.github.com/repos/jtanx/fontforge/hooks","issue_events_url":"https://api.github.com/repos/jtanx/fontforge/issues/events{/number}","events_url":"https://api.github.com/repos/jtanx/fontforge/events","assignees_url":"https://api.github.com/repos/jtanx/fontforge/assignees{/user}","branches_url":"https://api.github.com/repos/jtanx/fontforge/branches{/branch}","tags_url":"https://api.github.com/repos/jtanx/fontforge/tags","blobs_url":"https://api.github.com/repos/jtanx/fontforge/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jtanx/fontforge/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jtanx/fontforge/git/refs{/sha}","trees_url":"https://api.github.com/repos/jtanx/fontforge/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jtanx/fontforge/statuses/{sha}","languages_url":"https://api.github.com/repos/jtanx/fontforge/languages","stargazers_url":"https://api.github.com/repos/jtanx/fontforge/stargazers","contributors_url":"https://api.github.com/repos/jtanx/fontforge/contributors","subscribers_url":"https://api.github.com/repos/jtanx/fontforge/subscribers","subscription_url":"https://api.github.com/repos/jtanx/fontforge/subscription","commits_url":"https://api.github.com/repos/jtanx/fontforge/commits{/sha}","git_commits_url":"https://api.github.com/repos/jtanx/fontforge/git/commits{/sha}","comments_url":"https://api.github.com/repos/jtanx/fontforge/comments{/number}","issue_comment_url":"https://api.github.com/repos/jtanx/fontforge/issues/comments{/number}","contents_url":"https://api.github.com/repos/jtanx/fontforge/contents/{+path}","compare_url":"https://api.github.com/repos/jtanx/fontforge/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jtanx/fontforge/merges","archive_url":"https://api.github.com/repos/jtanx/fontforge/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jtanx/fontforge/downloads","issues_url":"https://api.github.com/repos/jtanx/fontforge/issues{/number}","pulls_url":"https://api.github.com/repos/jtanx/fontforge/pulls{/number}","milestones_url":"https://api.github.com/repos/jtanx/fontforge/milestones{/number}","notifications_url":"https://api.github.com/repos/jtanx/fontforge/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jtanx/fontforge/labels{/name}","releases_url":"https://api.github.com/repos/jtanx/fontforge/releases{/id}","created_at":"2014-01-07T08:32:40Z","updated_at":"2015-04-25T01:17:11Z","pushed_at":"2015-06-10T23:52:02Z","git_url":"git://github.com/jtanx/fontforge.git","ssh_url":"git@github.com:jtanx/fontforge.git","clone_url":"https://github.com/jtanx/fontforge.git","svn_url":"https://github.com/jtanx/fontforge","homepage":"http://fontforge.org","size":75345,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"fontforge:master","ref":"master","sha":"3b1ae86b51da4c33c8e974fc87694fe8a878b4b8","user":{"login":"fontforge","id":2048660,"avatar_url":"https://avatars.githubusercontent.com/u/2048660?v=3","gravatar_id":"","url":"https://api.github.com/users/fontforge","html_url":"https://github.com/fontforge","followers_url":"https://api.github.com/users/fontforge/followers","following_url":"https://api.github.com/users/fontforge/following{/other_user}","gists_url":"https://api.github.com/users/fontforge/gists{/gist_id}","starred_url":"https://api.github.com/users/fontforge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fontforge/subscriptions","organizations_url":"https://api.github.com/users/fontforge/orgs","repos_url":"https://api.github.com/users/fontforge/repos","events_url":"https://api.github.com/users/fontforge/events{/privacy}","received_events_url":"https://api.github.com/users/fontforge/received_events","type":"Organization","site_admin":false},"repo":{"id":5390156,"name":"fontforge","full_name":"fontforge/fontforge","owner":{"login":"fontforge","id":2048660,"avatar_url":"https://avatars.githubusercontent.com/u/2048660?v=3","gravatar_id":"","url":"https://api.github.com/users/fontforge","html_url":"https://github.com/fontforge","followers_url":"https://api.github.com/users/fontforge/followers","following_url":"https://api.github.com/users/fontforge/following{/other_user}","gists_url":"https://api.github.com/users/fontforge/gists{/gist_id}","starred_url":"https://api.github.com/users/fontforge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fontforge/subscriptions","organizations_url":"https://api.github.com/users/fontforge/orgs","repos_url":"https://api.github.com/users/fontforge/repos","events_url":"https://api.github.com/users/fontforge/events{/privacy}","received_events_url":"https://api.github.com/users/fontforge/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/fontforge/fontforge","description":"Free (libre) font editor for Windows, Mac OS X and GNU+Linux","fork":false,"url":"https://api.github.com/repos/fontforge/fontforge","forks_url":"https://api.github.com/repos/fontforge/fontforge/forks","keys_url":"https://api.github.com/repos/fontforge/fontforge/keys{/key_id}","collaborators_url":"https://api.github.com/repos/fontforge/fontforge/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/fontforge/fontforge/teams","hooks_url":"https://api.github.com/repos/fontforge/fontforge/hooks","issue_events_url":"https://api.github.com/repos/fontforge/fontforge/issues/events{/number}","events_url":"https://api.github.com/repos/fontforge/fontforge/events","assignees_url":"https://api.github.com/repos/fontforge/fontforge/assignees{/user}","branches_url":"https://api.github.com/repos/fontforge/fontforge/branches{/branch}","tags_url":"https://api.github.com/repos/fontforge/fontforge/tags","blobs_url":"https://api.github.com/repos/fontforge/fontforge/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/fontforge/fontforge/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/fontforge/fontforge/git/refs{/sha}","trees_url":"https://api.github.com/repos/fontforge/fontforge/git/trees{/sha}","statuses_url":"https://api.github.com/repos/fontforge/fontforge/statuses/{sha}","languages_url":"https://api.github.com/repos/fontforge/fontforge/languages","stargazers_url":"https://api.github.com/repos/fontforge/fontforge/stargazers","contributors_url":"https://api.github.com/repos/fontforge/fontforge/contributors","subscribers_url":"https://api.github.com/repos/fontforge/fontforge/subscribers","subscription_url":"https://api.github.com/repos/fontforge/fontforge/subscription","commits_url":"https://api.github.com/repos/fontforge/fontforge/commits{/sha}","git_commits_url":"https://api.github.com/repos/fontforge/fontforge/git/commits{/sha}","comments_url":"https://api.github.com/repos/fontforge/fontforge/comments{/number}","issue_comment_url":"https://api.github.com/repos/fontforge/fontforge/issues/comments{/number}","contents_url":"https://api.github.com/repos/fontforge/fontforge/contents/{+path}","compare_url":"https://api.github.com/repos/fontforge/fontforge/compare/{base}...{head}","merges_url":"https://api.github.com/repos/fontforge/fontforge/merges","archive_url":"https://api.github.com/repos/fontforge/fontforge/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/fontforge/fontforge/downloads","issues_url":"https://api.github.com/repos/fontforge/fontforge/issues{/number}","pulls_url":"https://api.github.com/repos/fontforge/fontforge/pulls{/number}","milestones_url":"https://api.github.com/repos/fontforge/fontforge/milestones{/number}","notifications_url":"https://api.github.com/repos/fontforge/fontforge/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/fontforge/fontforge/labels{/name}","releases_url":"https://api.github.com/repos/fontforge/fontforge/releases{/id}","created_at":"2012-08-12T17:08:20Z","updated_at":"2015-06-10T12:52:50Z","pushed_at":"2015-06-10T23:45:23Z","git_url":"git://github.com/fontforge/fontforge.git","ssh_url":"git@github.com:fontforge/fontforge.git","clone_url":"https://github.com/fontforge/fontforge.git","svn_url":"https://github.com/fontforge/fontforge","homepage":"http://fontforge.github.io/","size":88122,"stargazers_count":505,"watchers_count":505,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":135,"mirror_url":null,"open_issues_count":590,"forks":135,"open_issues":590,"watchers":505,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/fontforge/fontforge/pulls/2299"},"html":{"href":"https://github.com/fontforge/fontforge/pull/2299"},"issue":{"href":"https://api.github.com/repos/fontforge/fontforge/issues/2299"},"comments":{"href":"https://api.github.com/repos/fontforge/fontforge/issues/2299/comments"},"review_comments":{"href":"https://api.github.com/repos/fontforge/fontforge/pulls/2299/comments"},"review_comment":{"href":"https://api.github.com/repos/fontforge/fontforge/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/fontforge/fontforge/pulls/2299/commits"},"statuses":{"href":"https://api.github.com/repos/fontforge/fontforge/statuses/8a864c82fa3142b2cd6e30c14300d5645f7e60d8"}}}}