[ruby-dev:50914] [Ruby master Bug#16342] macOS + Ruby 2.6.0 以降で拡張ライブラリ内での waitpid() コールに失敗する
From:
naruse@...
Date:
2020-01-29 21:13:22 UTC
List:
ruby-dev #50914
SXNzdWUgIzE2MzQyIGhhcyBiZWVuIHVwZGF0ZWQgYnkgbmFydXNlIChZdWkgTkFSVVNFKS4NCg0K DQpJbWFnZU1hZ2lja+OCkuiqv+OBueOCi+OBqOiogOOBhuOCiOOCiuOCguOAgVJ1YnnjgpLoqr/j gbnjgovlv4XopoHjgYzjgYLjgovmsJfjga/jgZfjgb7jgZnjgYvjga3jgIINCg0KS2FtYmXjgZXj gpPjga7ku7DjgaPjgabjgYTjgovjgajjgYrjgorjgIFSdWJ544Gn44GvZm9ya+OBruWJjeW+jOOB q+WHpueQhuOCkuWFpeOCjOOBpuOBhOOBvuOBmeOAgg0K44GT44KM44Gv5L2V44KS44KE44Gj44Gm 44GE44KL44GL44Go44GE44GG44Go44CB44Gd44KC44Gd44KCZm9ya+OBqOOBhOOBhuOBruOBr+OD nuODq+ODgeOCueODrOODg+ODieOChOOCt+OCsOODiuODq+OBrumFjemAgeOBqOWkp+WkieebuOaA p+OBjOaCquOBj+OAgQ0K5LiN55So5oSP44Gr44K544Os44OD44OJ44GM6LW35YuV44GX44Gm44GE 44KL54q25oWL44GnZm9ya+OCkuihjOOBhuOBqOeVsOW4uOOBqueKtuaFi+OBq+OBquOCi+eSsOWi g+OBjOOBhOOBj+OBpOOBi+OBguOCiuOBvuOBl+OBn+OAgg0KTWFjIE9TIFjjgoLjgZ3jga7kuIDj gaTjgafjgZnjgIINCuOBneOCjOOCieOBuOOBruWvvuetluOBqOOBl+OBpnJiX2ZvcmtfcnVieeOB p+OBr2Zvcmvjga7nm7TliY3jgavjgr/jgqTjg57jg7zjgrnjg6zjg4Pjg4njgpLmraLjgoHjgIHj grfjgrDjg4rjg6vjgpLigKbjgarjgpPjgYvjgYTjgZjjgaPjgabigKbjgIHjgZ3jga7lvozjgafm uoDjgpLmjIHjgZfjgaZmb3Jr44KS6KGM44GE44CBDQpmb3Jr44Gu5b6M44Gr5pS544KB44Gm5oi7 44GX44Gf44KK44GX44Gm44G+44GZ44CCDQoNCuOBquOBruOBp+OAgUltYWdlTWFnaWNr44KS5ZG8 44Gz5Ye644GZ5YmN44Go5b6M44GrcmJfZm9ya19ydWJ544Gn44KE44Gj44Gm44GE44KL5YmN5Yem 55CG44O75b6M5Yem55CG44KS6L+95Yqg44GZ44KM44Gw5YuV44GP44Gu44Gn44Gv44Gq44GE44GL 44Go5oCd44GE44G+44GZDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NCkJ1ZyAjMTYzNDI6IG1hY09TICsgUnVieSAyLjYuMCDku6XpmY3jgafmi6HlvLXjg6njgqTj g5bjg6njg6rlhoXjgafjga4gd2FpdHBpZCgpIOOCs+ODvOODq+OBq+WkseaVl+OBmeOCiw0KaHR0 cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE2MzQyI2NoYW5nZS04NDExNQ0KDQoqIEF1 dGhvcjogd2F0c29uMTk3OCAoU2hpenVvIEZ1aml0YSkNCiogU3RhdHVzOiBSZWplY3RlZA0KKiBQ cmlvcml0eTogTm9ybWFsDQoqIEFzc2lnbmVlOiANCiogVGFyZ2V0IHZlcnNpb246IA0KKiBydWJ5 IC12OiANCiogQmFja3BvcnQ6IDIuNTogVU5LTk9XTiwgMi42OiBVTktOT1dODQotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCiMjIOWGjeePvueSsOWigw0KKiBSdWJ5 IDIuNi4wIOS7pemZjQ0KKiBtYWNPUyAxMC4xNSAo6Kmm44GX44Gf55Kw5aKDKQ0KDQojIyDllY/p oYzjga7oqqzmmI4NCm1hY09TIOS4iuOBpyBSdWJ5IDIuNi4wIOS7pemZjeOCkuS9v+eUqOOBl+OB n+mam+OBq+OAgeaLoeW8teODqeOCpOODluODqeODquWGheOBpyBgZm9yaygpL2V4ZWMoKWAg44Gn 5aSW6YOo44Kz44Oe44Oz44OJ44KS5a6f6KGM44GX44Gf44GC44GoIGB3YWl0cGlkKClgIOOCkuOC s+ODvOODq+OBmeOCi+OBqOWkseaVl+OBmeOCi+OCiOOBhuOBq+OBquOCiuOBvuOBl+OBn+OAgg0K 56eB44GM44Oh44Oz44OG44OK44Oz44K544GX44Gm44GE44KLIFJNYWdpY2sg5Yip55So44GX44Gm 44GE44KLIEltYWdlTWFnaWNrIOOBjCBQREYg44KS5Yem55CG44GZ44KL6Zqb44Gr44GT44Gu44KI 44GG44Gq5Yem55CG44KS6KGM44Gj44Gm44GK44KK44CBbWFjT1MgKyBSdWJ5IDIuNi4wIOS7pemZ jeOBp+WHpueQhuOBq+WkseaVl+OBmeOCi+OCiOOBhuOBq+OBquOCiuWbsOOBo+OBpuOBiuOCiuOB vuOBmeOAgg0KaHR0cHM6Ly9naXRodWIuY29tL3JtYWdpY2svcm1hZ2ljay9pc3N1ZXMvNDgzDQoN Cmh0dHBzOi8vZ2l0aHViLmNvbS9XYXRzb24xOTc4L3JtYWdpY2staXNzdWU0ODMg44Gr5YaN54++ 44Kz44O844OJ44KS55So5oSP44GX44Gm44GK44KK44CB5Lul5LiL44Gu5qeY44Gr5a6f6KGM44GX 44Gm44GE44Gf44Gg44GP44GoIG1hY09TICsgUnVieSAyLjYuMCDku6XpmY3jgafjgqjjg6njg7zn tYLkuobjgZfjgb7jgZnjgIINCg0KYGBgDQokIC4vc2V0dXAuc2gNCiQgcnVieSBzYW1wbGUucmIN CiQgcnVieSBzYW1wbGUucmINClJ1YnkgdjIuNi4wDQpFcnJvciB3YWl0cGlkKCk6IEludGVycnVw dGVkIHN5c3RlbSBjYWxsDQpgYGANCg0KYGBgDQokIC4vc2V0dXAuc2gNCiQgcnVieSAuL3NhbXBs ZS5yYg0KUnVieSB2Mi42LjUNCkVycm9yIHdhaXRwaWQoKTogSW50ZXJydXB0ZWQgc3lzdGVtIGNh bGwNCmBgYA0KDQoNCg0KUnVieSAyLjUueCDku6XkuIvjgafjgZnjgajmnJ/lvoXpgJrjgorjgasg YFdJRkVYSVRFRGAg44Gu44OR44K544KS6YCa44KK5q2j5bi444Gr57WC5LqG44GX44G+44GZ44CC DQoNCmBgYA0KJCAuL3NldHVwLnNoDQokIHJ1Ynkgc2FtcGxlLnJiDQpSdWJ5IHYyLjUuNw0KKDEp IFdJRkVYSVRFRCA6IHN0YXR1cyA9IDANCmBgYA0KDQpgYGANCiQgLi9zZXR1cC5zaA0KJCBydWJ5 IHNhbXBsZS5yYg0KUnVieSB2Mi4zLjgNCigxKSBXSUZFWElURUQgOiBzdGF0dXMgPSAwDQpgYGAN Cg0K56K66KqN44GX44Gf6ZmQ44KK44CBbWFjT1Mg5LiK44Gg44GR44Gn44GT44Gu54++6LGh44GM 55m655Sf44GX44G+44GZ44CCDQoNCiMjIOWGjeePvuOCs+ODvOODiQ0KaHR0cHM6Ly9naXRodWIu Y29tL1dhdHNvbjE5Nzgvcm1hZ2ljay1pc3N1ZTQ4MyDjga7jg6zjg53jgrjjg4jjg6rjgavku6Xk uIvjgajlkIzmp5jjga7lho3nj77jgrPjg7zjg4njgpLjgrPjg5/jg4Pjg4jjgZfjgabjgYrjgorj gIHjgZnjgZDjgavnorroqo3jgafjgY3jgovjgYvjgajmgJ3jgYTjgb7jgZnjgIINCg0KYGBgDQoj aW5jbHVkZSA8cnVieS5oPg0KI2luY2x1ZGUgPHVuaXN0ZC5oPg0KDQpWQUxVRQ0Kc2FtcGxlX3Rl c3QoVkFMVUUgc2VsZikNCnsNCiAgICBpbnQgc3RhdHVzID0gMDsNCiAgICBpbnQgY2hpbGRfc3Rh dHVzID0gMDsNCiAgICBwaWRfdCBjaGlsZF9waWQgPSBmb3JrKCk7DQoNCg0KICAgIGlmIChjaGls ZF9waWQgPT0gMCkgew0KICAgICAgICBjaGFyICpjb25zdCBhcmdzW10gPSB7DQogICAgICAgICAg ICAiL2Jpbi9zbGVlcCIsDQogICAgICAgICAgICAiMSIsDQogICAgICAgICAgICBOVUxMDQogICAg ICAgIH07DQogICAgICAgIHN0YXR1cyA9IGV4ZWN2cChhcmdzWzBdLCBhcmdzKTsNCiAgICAgICAg ZXhpdCgwKTsNCiAgICB9DQogICAgZWxzZSB7DQogICAgICAgIHBpZF90IHBpZDsNCg0KICAgICAg ICBwaWQgPSB3YWl0cGlkKGNoaWxkX3BpZCwgJmNoaWxkX3N0YXR1cywgMCk7DQogICAgICAgIGlm IChwaWQgPT0gLTEpIHsNCiAgICAgICAgICAgIHN0YXR1cyA9IC0xOw0KICAgICAgICAgICAgcGVy cm9yKCJFcnJvciB3YWl0cGlkKCkiKTsNCiAgICAgICAgfQ0KICAgICAgICBlbHNlIHsNCiAgICAg ICAgICAgIGlmIChXSUZFWElURUQoY2hpbGRfc3RhdHVzKSkgew0KICAgICAgICAgICAgICAgIC8v IEV4cGVjdGVkIHBhdGgNCiAgICAgICAgICAgICAgICBzdGF0dXMgPSBXRVhJVFNUQVRVUyhjaGls ZF9zdGF0dXMpOw0KICAgICAgICAgICAgICAgIHByaW50ZigiKDEpIFdJRkVYSVRFRCA6IHN0YXR1 cyA9ICVkXG4iLCBzdGF0dXMpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZWxzZSBpZiAo V0lGU0lHTkFMRUQoY2hpbGRfc3RhdHVzKSkgew0KICAgICAgICAgICAgICAgIHN0YXR1cyA9IC0x Ow0KICAgICAgICAgICAgICAgIHByaW50ZigiKDIpIFdJRlNJR05BTEVEIDogc3RhdHVzID0gJWRc biIsIHN0YXR1cyk7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCg0KICAgIHJl dHVybiBJTlQyRklYKHN0YXR1cyk7DQp9DQoNCnZvaWQgSW5pdF9zYW1wbGUodm9pZCkNCnsNCiAg ICBWQUxVRSByYl9jU2FtcGxlID0gcmJfZGVmaW5lX2NsYXNzKCJTYW1wbGUiLCByYl9jT2JqZWN0 KTsNCiAgICByYl9kZWZpbmVfbWV0aG9kKHJiX2NTYW1wbGUsICJ0ZXN0Iiwgc2FtcGxlX3Rlc3Qs IDApOw0KfQ0KYGBgDQoNCg0KDQotLSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLw0K