{"action":"created","issue":{"url":"https://api.github.com/repos/nstbayless/gyoa/issues/2","labels_url":"https://api.github.com/repos/nstbayless/gyoa/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/nstbayless/gyoa/issues/2/comments","events_url":"https://api.github.com/repos/nstbayless/gyoa/issues/2/events","html_url":"https://github.com/nstbayless/gyoa/issues/2","id":101323633,"number":2,"title":"dependance on exact int length (32-bit -1u saved to file)","user":{"login":"SimonN","id":674969,"avatar_url":"https://avatars.githubusercontent.com/u/674969?v=3","gravatar_id":"","url":"https://api.github.com/users/SimonN","html_url":"https://github.com/SimonN","followers_url":"https://api.github.com/users/SimonN/followers","following_url":"https://api.github.com/users/SimonN/following{/other_user}","gists_url":"https://api.github.com/users/SimonN/gists{/gist_id}","starred_url":"https://api.github.com/users/SimonN/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SimonN/subscriptions","organizations_url":"https://api.github.com/users/SimonN/orgs","repos_url":"https://api.github.com/users/SimonN/repos","events_url":"https://api.github.com/users/SimonN/events{/privacy}","received_events_url":"https://api.github.com/users/SimonN/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-08-17T02:20:50Z","updated_at":"2015-08-18T22:26:52Z","closed_at":"2015-08-18T22:26:52Z","body":"Here's an excerpt from the current saved world, rm_0:0.txt of gyoa-lix:\r\n\r\n\t<option dst=\"1:1932362241\" text=\"Harass somebody from #lix\" id=\"3:660353132\"/>\r\n\t<option dst=\"4294967295:32767\" text=\"Prepare some delicious (meaty?) food\" id=\"4:319045096\"/>\r\n\t<option dst=\"4294967295:32767\" text=\"Take a nap\" id=\"5:1518898593\"/>\r\n\r\nThe 32-bit unsigned -1 is written to file directly. This makes the game depend on the exact length of unsigned. The current implementation will break if a build with 64-bit ints reads files written by 32-bit builds.\r\n\r\nExpected: No reliance on exact length.\r\n\r\nSince the null rooms must be saved somehow, a signed -1 seems viable. I have pushed to https://github.com/SimonN/gyoa/tree/signed-gid-rid the branch signed-gid-rid, which uses signed -1 internally, and should write them to files. Operator < sorts null rooms at the end still. Don't merge blindly -- I'm having issues with null bytes getting written to XML files, corrupting them. (https://github.com/SimonN/gyoa/issues/1) I want to sort that out first.\r\n\r\n(There is also branch unsigned-gid-rid, which merely fixes all compiler warnings, but still has the -1 issue and the XML corruption.)"},"comment":{"url":"https://api.github.com/repos/nstbayless/gyoa/issues/comments/132375018","html_url":"https://github.com/nstbayless/gyoa/issues/2#issuecomment-132375018","issue_url":"https://api.github.com/repos/nstbayless/gyoa/issues/2","id":132375018,"user":{"login":"SimonN","id":674969,"avatar_url":"https://avatars.githubusercontent.com/u/674969?v=3","gravatar_id":"","url":"https://api.github.com/users/SimonN","html_url":"https://github.com/SimonN","followers_url":"https://api.github.com/users/SimonN/followers","following_url":"https://api.github.com/users/SimonN/following{/other_user}","gists_url":"https://api.github.com/users/SimonN/gists{/gist_id}","starred_url":"https://api.github.com/users/SimonN/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SimonN/subscriptions","organizations_url":"https://api.github.com/users/SimonN/orgs","repos_url":"https://api.github.com/users/SimonN/repos","events_url":"https://api.github.com/users/SimonN/events{/privacy}","received_events_url":"https://api.github.com/users/SimonN/received_events","type":"User","site_admin":false},"created_at":"2015-08-18T22:26:52Z","updated_at":"2015-08-18T22:26:52Z","body":"Should be fixed with today's pull request."}}