{"action":"created","issue":{"url":"https://api.github.com/repos/geany/geany/issues/274","labels_url":"https://api.github.com/repos/geany/geany/issues/274/labels{/name}","comments_url":"https://api.github.com/repos/geany/geany/issues/274/comments","events_url":"https://api.github.com/repos/geany/geany/issues/274/events","html_url":"https://github.com/geany/geany/pull/274","id":33919459,"number":274,"title":"An ongoing effort to improve the spawning situation","user":{"login":"zhekov","id":1112714,"avatar_url":"https://avatars.githubusercontent.com/u/1112714?v=3","gravatar_id":"","url":"https://api.github.com/users/zhekov","html_url":"https://github.com/zhekov","followers_url":"https://api.github.com/users/zhekov/followers","following_url":"https://api.github.com/users/zhekov/following{/other_user}","gists_url":"https://api.github.com/users/zhekov/gists{/gist_id}","starred_url":"https://api.github.com/users/zhekov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhekov/subscriptions","organizations_url":"https://api.github.com/users/zhekov/orgs","repos_url":"https://api.github.com/users/zhekov/repos","events_url":"https://api.github.com/users/zhekov/events{/privacy}","received_events_url":"https://api.github.com/users/zhekov/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2014-05-20T19:10:50Z","updated_at":"2015-01-31T17:03:25Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/geany/geany/pulls/274","html_url":"https://github.com/geany/geany/pull/274","diff_url":"https://github.com/geany/geany/pull/274.diff","patch_url":"https://github.com/geany/geany/pull/274.patch"},"body":"Version 1.01 - restored build_spawn_cmd() via /bin/sh, for compatibility."},"comment":{"url":"https://api.github.com/repos/geany/geany/issues/comments/72326039","html_url":"https://github.com/geany/geany/pull/274#issuecomment-72326039","issue_url":"https://api.github.com/repos/geany/geany/issues/274","id":72326039,"user":{"login":"b4n","id":793526,"avatar_url":"https://avatars.githubusercontent.com/u/793526?v=3","gravatar_id":"","url":"https://api.github.com/users/b4n","html_url":"https://github.com/b4n","followers_url":"https://api.github.com/users/b4n/followers","following_url":"https://api.github.com/users/b4n/following{/other_user}","gists_url":"https://api.github.com/users/b4n/gists{/gist_id}","starred_url":"https://api.github.com/users/b4n/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/b4n/subscriptions","organizations_url":"https://api.github.com/users/b4n/orgs","repos_url":"https://api.github.com/users/b4n/repos","events_url":"https://api.github.com/users/b4n/events{/privacy}","received_events_url":"https://api.github.com/users/b4n/received_events","type":"User","site_admin":false},"created_at":"2015-01-31T17:03:25Z","updated_at":"2015-01-31T17:03:25Z","body":"OK, I finished reading (and only that for now) the changes, and as far as I can say with this, it looks mostly good indeed.\r\n\r\nA few remarks or questions:\r\n\r\n* if we design a new API, wouldn't we want to support embedded NUL bytes?  e.g. adding various size arguments (if that's enough)\r\n* do we really want a different command-line API depending on the platform?  In one hand it possibly make the use of custom command lines more natural to a Windows user (if this ever feels natural for a Windows user), but on the other hand it means the configuration is not portable.  Also, it means any call we make has to fit the platform.  My suggestion is, wouldn't we rather want to always use the UNIX style command lines, and e.g. parse it with `g_shell_parse_argv()` and convert that ARG as needed for Windows under the hood?\r\n  * as a sub-point, if we don't, do we really want to have that command line+argv thingie?\r\n* as said in an inline comment, `spawn_with_capture()` looks a bit catchy as it can be called with a `NULL` `block_window` and then the caller has to manually call a sub-main loop\r\n* testing code is great, but could some tests be automated?  like by building the test executable and checking its result.  that would probably be awesome :)"}}