Issue #3622 has been updated by Hiroshi NAKAMURA. File expect-continue.diff added Patch updated with tests. Tests requires current trunk HEAD. Eric, please try this patch. RDoc expected. Anyone? ---------------------------------------- http://redmine.ruby-lang.org/issues/show/3622 ---------------------------------------- http://redmine.ruby-lang.org SW5kZXg6IGxpYi9uZXQvaHR0cC5yYgo9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLSBsaWIvbmV0L2h0dHAucmIJKHJldmlzaW9uIDI5MjE3KQorKysgbGli L25ldC9odHRwLnJiCSh3b3JraW5nIGNvcHkpCkBAIC01MTcsNiArNTE3LDcg QEAKICAgICAgIEBzdGFydGVkID0gZmFsc2UKICAgICAgIEBvcGVuX3RpbWVv dXQgPSBuaWwKICAgICAgIEByZWFkX3RpbWVvdXQgPSA2MAorICAgICAgQGNv bnRpbnVlX3RpbWVvdXQgPSBuaWwKICAgICAgIEBkZWJ1Z19vdXRwdXQgPSBu aWwKICAgICAgIEB1c2Vfc3NsID0gZmFsc2UKICAgICAgIEBzc2xfY29udGV4 dCA9IG5pbApAQCAtNTcwLDYgKzU3MSwxNiBAQAogICAgICAgQHJlYWRfdGlt ZW91dCA9IHNlYwogICAgIGVuZAogCisgICAgIyBTZWNvbmRzIHRvIHdhaXQg Zm9yIDEwMCBDb250aW51ZSByZXNwb25zZS4gIElmIHRoZSBIVFRQIG9iamVj dCBkb2VzIG5vdAorICAgICMgcmVjZWl2ZSBhIHJlc3BvbnNlIGluIHRoaXMg bWFueSBzZWNvbmRzIGl0IHNlbmRzIHRoZSByZXF1ZXN0IGJvZHkuCisgICAg YXR0cl9yZWFkZXIgOmNvbnRpbnVlX3RpbWVvdXQKKworICAgICMgU2V0dGVy IGZvciB0aGUgY29udGludWVfdGltZW91dCBhdHRyaWJ1dGUuCisgICAgZGVm IGNvbnRpbnVlX3RpbWVvdXQ9KHNlYykKKyAgICAgIEBzb2NrZXQuY29udGlu dWVfdGltZW91dCA9IHNlYyBpZiBAc29ja2V0CisgICAgICBAY29udGludWVf dGltZW91dCA9IHNlYworICAgIGVuZAorCiAgICAgIyByZXR1cm5zIHRydWUg aWYgdGhlIEhUVFAgc2Vzc2lvbiBpcyBzdGFydGVkLgogICAgIGRlZiBzdGFy dGVkPwogICAgICAgQHN0YXJ0ZWQKQEAgLTExOTAsMTIgKzEyMDEsMTUgQEAK IAogICAgIGRlZiB0cmFuc3BvcnRfcmVxdWVzdChyZXEpCiAgICAgICBiZWdp bl90cmFuc3BvcnQgcmVxCi0gICAgICByZXEuZXhlYyBAc29ja2V0LCBAY3Vy cl9odHRwX3ZlcnNpb24sIGVkaXRfcGF0aChyZXEucGF0aCkKLSAgICAgIGJl Z2luCi0gICAgICAgIHJlcyA9IEhUVFBSZXNwb25zZS5yZWFkX25ldyhAc29j a2V0KQotICAgICAgZW5kIHdoaWxlIHJlcy5raW5kX29mPyhIVFRQQ29udGlu dWUpCi0gICAgICByZXMucmVhZGluZ19ib2R5KEBzb2NrZXQsIHJlcS5yZXNw b25zZV9ib2R5X3Blcm1pdHRlZD8pIHsKLSAgICAgICAgeWllbGQgcmVzIGlm IGJsb2NrX2dpdmVuPworICAgICAgcmVzID0gY2F0Y2goOnJlc3BvbnNlKSB7 CisgICAgICAgIHJlcS5leGVjIEBzb2NrZXQsIEBjdXJyX2h0dHBfdmVyc2lv biwgZWRpdF9wYXRoKHJlcS5wYXRoKQorICAgICAgICBiZWdpbgorICAgICAg ICAgIHJlcyA9IEhUVFBSZXNwb25zZS5yZWFkX25ldyhAc29ja2V0KQorICAg ICAgICBlbmQgd2hpbGUgcmVzLmtpbmRfb2Y/KEhUVFBDb250aW51ZSkKKyAg ICAgICAgcmVzLnJlYWRpbmdfYm9keShAc29ja2V0LCByZXEucmVzcG9uc2Vf Ym9keV9wZXJtaXR0ZWQ/KSB7CisgICAgICAgICAgeWllbGQgcmVzIGlmIGJs b2NrX2dpdmVuPworICAgICAgICB9CisgICAgICAgIHJlcwogICAgICAgfQog ICAgICAgZW5kX3RyYW5zcG9ydCByZXEsIHJlcwogICAgICAgcmVzCkBAIC0x NzM5LDYgKzE3NTMsNyBAQAogICAgICAgc2VsZi5jb250ZW50X2xlbmd0aCA9 IGJvZHkuYnl0ZXNpemUKICAgICAgIGRlbGV0ZSAnVHJhbnNmZXItRW5jb2Rp bmcnCiAgICAgICBzdXBwbHlfZGVmYXVsdF9jb250ZW50X3R5cGUKKyAgICAg IHdhaXRfZm9yX2NvbnRpbnVlIHNvY2ssIHZlciBpZiBzb2NrLmNvbnRpbnVl X3RpbWVvdXQKICAgICAgIHdyaXRlX2hlYWRlciBzb2NrLCB2ZXIsIHBhdGgK ICAgICAgIHNvY2sud3JpdGUgYm9keQogICAgIGVuZApAQCAtMTc0OSw2ICsx NzY0LDcgQEAKICAgICAgICAgICAgICJDb250ZW50LUxlbmd0aCBub3QgZ2l2 ZW4gYW5kIFRyYW5zZmVyLUVuY29kaW5nIGlzIG5vdCBgY2h1bmtlZCciCiAg ICAgICBlbmQKICAgICAgIHN1cHBseV9kZWZhdWx0X2NvbnRlbnRfdHlwZQor ICAgICAgd2FpdF9mb3JfY29udGludWUgc29jaywgdmVyIGlmIHNvY2suY29u dGludWVfdGltZW91dAogICAgICAgd3JpdGVfaGVhZGVyIHNvY2ssIHZlciwg cGF0aAogICAgICAgaWYgY2h1bmtlZD8KICAgICAgICAgd2hpbGUgcyA9IGYu cmVhZCgxMDI0KQpAQCAtMTc2OCw2ICsxNzg0LDIyIEBACiAgICAgICBzZXRf Y29udGVudF90eXBlICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29k ZWQnCiAgICAgZW5kCiAKKyAgICAjIworICAgICMgV2FpdHMgdXAgdG8gdGhl IGNvbnRpbnVlIHRpbWVvdXQgZm9yIGEgcmVzcG9uc2UgZnJvbSB0aGUgc2Vy dmVyIHByb3ZpZGVkCisgICAgIyB3ZSdyZSBzcGVha2luZyBIVFRQIDEuMSBh bmQgYXJlIGV4cGVjdGluZyBhIDEwMC1jb250aW51ZSByZXNwb25zZS4KKwor ICAgIGRlZiB3YWl0X2Zvcl9jb250aW51ZShzb2NrLCB2ZXIpCisgICAgICBp ZiB2ZXIgPj0gJzEuMScgYW5kIEBoZWFkZXJbJ2V4cGVjdCddIGFuZAorICAg ICAgICAgIEBoZWFkZXJbJ2V4cGVjdCddLmluY2x1ZGU/KCcxMDAtY29udGlu dWUnKSB0aGVuCisgICAgICAgIGlmIElPLnNlbGVjdCBbc29jay5pb10sIG5p bCwgbmlsLCBzb2NrLmNvbnRpbnVlX3RpbWVvdXQgdGhlbgorICAgICAgICAg IHJlcyA9IEhUVFBSZXNwb25zZS5yZWFkX25ldyBzb2NrCisgICAgICAgICAg dW5sZXNzIHJlcy5raW5kX29mPyhOZXQ6OkhUVFBDb250aW51ZSkKKyAgICAg ICAgICAgIHRocm93IDpyZXNwb25zZSwgcmVzCisgICAgICAgICAgZW5kCisg ICAgICAgIGVuZAorICAgICAgZW5kCisgICAgZW5kCisKICAgICBkZWYgd3Jp dGVfaGVhZGVyKHNvY2ssIHZlciwgcGF0aCkKICAgICAgIGJ1ZiA9ICIje0Bt ZXRob2R9ICN7cGF0aH0gSFRUUC8je3Zlcn1cclxuIgogICAgICAgZWFjaF9j YXBpdGFsaXplZCBkbyB8ayx2fApJbmRleDogbGliL25ldC9wcm90b2NvbC5y Ygo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBsaWIvbmV0L3Byb3RvY29s LnJiCShyZXZpc2lvbiAyOTIxNykKKysrIGxpYi9uZXQvcHJvdG9jb2wucmIJ KHdvcmtpbmcgY29weSkKQEAgLTUwLDEyICs1MCwxNCBAQAogICAgIGRlZiBp bml0aWFsaXplKGlvKQogICAgICAgQGlvID0gaW8KICAgICAgIEByZWFkX3Rp bWVvdXQgPSA2MAorICAgICAgQGNvbnRpbnVlX3RpbWVvdXQgPSBuaWwKICAg ICAgIEBkZWJ1Z19vdXRwdXQgPSBuaWwKICAgICAgIEByYnVmID0gJycKICAg ICBlbmQKIAogICAgIGF0dHJfcmVhZGVyIDppbwogICAgIGF0dHJfYWNjZXNz b3IgOnJlYWRfdGltZW91dAorICAgIGF0dHJfYWNjZXNzb3IgOmNvbnRpbnVl X3RpbWVvdXQKICAgICBhdHRyX2FjY2Vzc29yIDpkZWJ1Z19vdXRwdXQKIAog ICAgIGRlZiBpbnNwZWN0CkluZGV4OiB0ZXN0L25ldC9odHRwL3Rlc3RfaHR0 cC5yYgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSB0ZXN0L25ldC9odHRw L3Rlc3RfaHR0cC5yYgkocmV2aXNpb24gMjkyMTcpCisrKyB0ZXN0L25ldC9o dHRwL3Rlc3RfaHR0cC5yYgkod29ya2luZyBjb3B5KQpAQCAtMzcyLDYgKzM3 Miw4NyBAQAogICBlbmQKIGVuZAogCitjbGFzcyBUZXN0TmV0SFRUUENvbnRp bnVlIDwgVGVzdDo6VW5pdDo6VGVzdENhc2UKKyAgQ09ORklHID0geworICAg ICdob3N0JyA9PiAnMTI3LjAuMC4xJywKKyAgICAncG9ydCcgPT4gMTAwODEs CisgICAgJ3Byb3h5X2hvc3QnID0+IG5pbCwKKyAgICAncHJveHlfcG9ydCcg PT4gbmlsLAorICAgICdjaHVua2VkJyA9PiB0cnVlLAorICB9CisKKyAgaW5j bHVkZSBUZXN0TmV0SFRUUFV0aWxzCisKKyAgZGVmIGxvZ2ZpbGUKKyAgICBA ZGVidWcgPSBTdHJpbmdJTy5uZXcoJycpCisgIGVuZAorCisgIGRlZiBtb3Vu dF9wcm9jKCZibG9jaykKKyAgICBAc2VydmVyLm1vdW50KCcvY29udGludWUn LCBXRUJyaWNrOjpIVFRQU2VydmxldDo6UHJvY0hhbmRsZXIubmV3KGJsb2Nr LnRvX3Byb2MpKQorICBlbmQKKworICBkZWYgdGVzdF9leHBlY3RfY29udGlu dWUKKyAgICBtb3VudF9wcm9jIHt8cmVxLCByZXN8CisgICAgICByZXEuY29u dGludWUKKyAgICAgIHJlcy5ib2R5ID0gcmVxLnF1ZXJ5Wydib2R5J10KKyAg ICB9CisgICAgc3RhcnQge3xodHRwfAorICAgICAgaHR0cC5jb250aW51ZV90 aW1lb3V0ID0gMC4yCisgICAgICBodHRwLnJlcXVlc3RfcG9zdCgnL2NvbnRp bnVlJywgJ2JvZHk9Qk9EWScsICdleHBlY3QnID0+ICcxMDAtY29udGludWUn KSB7fHJlc3wKKyAgICAgICAgYXNzZXJ0X2VxdWFsKCdCT0RZJywgcmVzLnJl YWRfYm9keSkKKyAgICAgIH0KKyAgICB9CisgICAgYXNzZXJ0X21hdGNoKC9F eHBlY3Q6IDEwMC1jb250aW51ZS8sIEBkZWJ1Zy5zdHJpbmcpCisgICAgYXNz ZXJ0X21hdGNoKC9IVFRQXC8xLjEgMTAwIGNvbnRpbnVlLywgQGRlYnVnLnN0 cmluZykKKyAgZW5kCisKKyAgZGVmIHRlc3RfZXhwZWN0X2NvbnRpbnVlX3Rp bWVvdXQKKyAgICBtb3VudF9wcm9jIHt8cmVxLCByZXN8CisgICAgICBzbGVl cCAwLjIKKyAgICAgIHJlcS5jb250aW51ZSAjIGp1c3QgaWdub3JlZCBiZWNh dXNlIGl0J3MgJzEwMCcKKyAgICAgIHJlcy5ib2R5ID0gcmVxLnF1ZXJ5Wydi b2R5J10KKyAgICB9CisgICAgc3RhcnQge3xodHRwfAorICAgICAgaHR0cC5j b250aW51ZV90aW1lb3V0ID0gMAorICAgICAgaHR0cC5yZXF1ZXN0X3Bvc3Qo Jy9jb250aW51ZScsICdib2R5PUJPRFknLCAnZXhwZWN0JyA9PiAnMTAwLWNv bnRpbnVlJykge3xyZXN8CisgICAgICAgIGFzc2VydF9lcXVhbCgnQk9EWScs IHJlcy5yZWFkX2JvZHkpCisgICAgICB9CisgICAgfQorICAgIGFzc2VydF9t YXRjaCgvRXhwZWN0OiAxMDAtY29udGludWUvLCBAZGVidWcuc3RyaW5nKQor ICAgIGFzc2VydF9tYXRjaCgvSFRUUFwvMS4xIDEwMCBjb250aW51ZS8sIEBk ZWJ1Zy5zdHJpbmcpCisgIGVuZAorCisgIGRlZiB0ZXN0X2V4cGVjdF9jb250 aW51ZV9lcnJvcgorICAgIG1vdW50X3Byb2Mge3xyZXEsIHJlc3wKKyAgICAg IHJlcy5zdGF0dXMgPSA1MDEKKyAgICAgIHJlcy5ib2R5ID0gcmVxLnF1ZXJ5 Wydib2R5J10KKyAgICB9CisgICAgc3RhcnQge3xodHRwfAorICAgICAgaHR0 cC5jb250aW51ZV90aW1lb3V0ID0gMAorICAgICAgaHR0cC5yZXF1ZXN0X3Bv c3QoJy9jb250aW51ZScsICdib2R5PUVSUk9SJywgJ2V4cGVjdCcgPT4gJzEw MC1jb250aW51ZScpIHt8cmVzfAorICAgICAgICBhc3NlcnRfZXF1YWwoJ0VS Uk9SJywgcmVzLnJlYWRfYm9keSkKKyAgICAgIH0KKyAgICB9CisgICAgYXNz ZXJ0X21hdGNoKC9FeHBlY3Q6IDEwMC1jb250aW51ZS8sIEBkZWJ1Zy5zdHJp bmcpCisgICAgYXNzZXJ0X25vdF9tYXRjaCgvSFRUUFwvMS4xIDEwMCBjb250 aW51ZS8sIEBkZWJ1Zy5zdHJpbmcpCisgIGVuZAorCisgIGRlZiB0ZXN0X2V4 cGVjdF9jb250aW51ZV9lcnJvcl93aGlsZV93YWl0aW5nCisgICAgbW91bnRf cHJvYyB7fHJlcSwgcmVzfAorICAgICAgcmVzLnN0YXR1cyA9IDUwMQorICAg ICAgcmVzLmJvZHkgPSByZXEucXVlcnlbJ2JvZHknXQorICAgIH0KKyAgICBz dGFydCB7fGh0dHB8CisgICAgICBodHRwLmNvbnRpbnVlX3RpbWVvdXQgPSAw LjUKKyAgICAgIGh0dHAucmVxdWVzdF9wb3N0KCcvY29udGludWUnLCAnYm9k eT1FUlJPUicsICdleHBlY3QnID0+ICcxMDAtY29udGludWUnKSB7fHJlc3wK KyAgICAgICAgYXNzZXJ0X2VxdWFsKCdFUlJPUicsIHJlcy5yZWFkX2JvZHkp CisgICAgICB9CisgICAgfQorICAgIGFzc2VydF9tYXRjaCgvRXhwZWN0OiAx MDAtY29udGludWUvLCBAZGVidWcuc3RyaW5nKQorICAgIGFzc2VydF9ub3Rf bWF0Y2goL0hUVFBcLzEuMSAxMDAgY29udGludWUvLCBAZGVidWcuc3RyaW5n KQorICBlbmQKK2VuZAorCiA9YmVnaW4KIGNsYXNzIFRlc3ROZXRIVFRQX3By b3h5IDwgVGVzdDo6VW5pdDo6VGVzdENhc2UKICAgQ09ORklHID0gewo=