From: Shugo Maeda Date: 2010-12-04T22:50:59+09:00 Subject: [ruby-core:33569] Re: [Ruby 1.9-Feature#4085][Open] Refinements and nested methods --001636831b208015be049695f051 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hi, 2010/12/3 Yusuke ENDOH : > I might find serious concurrency problem of Shugo's patch, though I'm > not sure that this is what you mean. =A0Indeed, we may have to give up > propagating refinements via block. I have fixed it with additional overhead:) Please try the attached patch. --=20 Shugo Maeda --001636831b208015be049695f051 Content-Type: text/x-patch; charset=US-ASCII; name="inline_cache_fix_20101204.diff" Content-Disposition: attachment; filename="inline_cache_fix_20101204.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ghak7efx0 ZGlmZiAtLWdpdCBhL3Rlc3QvcnVieS90ZXN0X3JlZmluZW1lbnQucmIgYi90ZXN0L3J1YnkvdGVz dF9yZWZpbmVtZW50LnJiCmluZGV4IGVkMDFjNzcuLmU0YmZhOTUgMTAwNjQ0Ci0tLSBhL3Rlc3Qv cnVieS90ZXN0X3JlZmluZW1lbnQucmIKKysrIGIvdGVzdC9ydWJ5L3Rlc3RfcmVmaW5lbWVudC5y YgpAQCAtMzU0LDUgKzM1NCwyOSBAQCBjbGFzcyBUZXN0UmVmaW5lbWVudCA8IFRlc3Q6OlVuaXQ6 OlRlc3RDYXNlCiAgICAgYXNzZXJ0X2VxdWFsKFJhdGlvbmFsKDEsIDIpLCByZWZpbmVfaW5fbWV0 aG9kKQogICAgIGFzc2VydF9lcXVhbCgwLCAxIC8gMikKICAgZW5kCisKKyAgIyBbcnVieS1jb3Jl OjMzNTM1XQorICBkZWYgdGVzdF9jb25jdXJyZW50X21vZHVsZV9ldmFsCisgICAgYyA9IENsYXNz Lm5ldyB7CisgICAgICBkZWYgdGVzdDsgcCA6dGVzdDsgZW5kCisgICAgfQorICAgIGZvb19leHQg PSBNb2R1bGUubmV3IHsKKyAgICAgIHJlZmluZShjKSB7IGRlZiB0ZXN0OyA6Zm9vOyBlbmQgfQor ICAgIH0KKyAgICBiYXJfZXh0ID0gTW9kdWxlLm5ldyB7CisgICAgICByZWZpbmUoYykgeyBkZWYg dGVzdDsgOmJhcjsgZW5kIH0KKyAgICB9CisgICAgZiA9IHByb2MgeworICAgICAgc2xlZXAoMC4w MSkKKyAgICAgIGMubmV3LnRlc3QKKyAgICB9CisgICAgYXNzZXJ0X2VxdWFsKDpmb28sIGZvb19l eHQubW9kdWxlX2V2YWwoJmYpKQorICAgIGFzc2VydF9lcXVhbCg6YmFyLCBiYXJfZXh0Lm1vZHVs ZV9ldmFsKCZmKSkKKyAgICBhcnkgPSBbCisgICAgICBUaHJlYWQubmV3IHsgZm9vX2V4dC5jbGFz c19ldmFsKCZmKSB9LAorICAgICAgVGhyZWFkLm5ldyB7IGJhcl9leHQuY2xhc3NfZXZhbCgmZikg fQorICAgIF0uY29sbGVjdCB7fHR8IHQudmFsdWUgfQorICAgIGFzc2VydF9lcXVhbChbOmZvbywg OmJhcl0sIGFyeSkKKyAgZW5kCiBlbmQKIApkaWZmIC0tZ2l0IGEvdm1fY29yZS5oIGIvdm1fY29y ZS5oCmluZGV4IDVhNWQwOGUuLjYwMDA3MzkgMTAwNjQ0Ci0tLSBhL3ZtX2NvcmUuaAorKysgYi92 bV9jb3JlLmgKQEAgLTEyNyw2ICsxMjcsNyBAQCB0eXBlZGVmIHN0cnVjdCByYl9jb21waWxlX29w dGlvbl9zdHJ1Y3QgcmJfY29tcGlsZV9vcHRpb25fdDsKIHN0cnVjdCBpc2VxX2lubGluZV9jYWNo ZV9lbnRyeSB7CiAgICAgVkFMVUUgaWNfdm1zdGF0OwogICAgIFZBTFVFIGljX2NsYXNzOworICAg IFZBTFVFIGljX29tb2Q7CiAgICAgdW5pb24gewogCVZBTFVFIHZhbHVlOwogCXJiX21ldGhvZF9l bnRyeV90ICptZXRob2Q7CmRpZmYgLS1naXQgYS92bV9pbnNuaGVscGVyLmMgYi92bV9pbnNuaGVs cGVyLmMKaW5kZXggNGE0MTU2YS4uNDRmODFlMCAxMDA2NDQKLS0tIGEvdm1faW5zbmhlbHBlci5j CisrKyBiL3ZtX2luc25oZWxwZXIuYwpAQCAtMTM3NSw4ICsxMzc1LDExIEBAIHN0YXRpYyBpbmxp bmUgY29uc3QgcmJfbWV0aG9kX2VudHJ5X3QgKgogdm1fbWV0aG9kX3NlYXJjaChWQUxVRSBpZCwg VkFMVUUga2xhc3MsIElDIGljLCBWQUxVRSAqZGVmaW5lZF9jbGFzc19wdHIpCiB7CiAgICAgcmJf bWV0aG9kX2VudHJ5X3QgKm1lOworICAgIE5PREUgKmNyZWYgPSByYl92bV9jcmVmKCk7CisKICNp ZiBPUFRfSU5MSU5FX01FVEhPRF9DQUNIRQogICAgIGlmIChMSUtFTFkoa2xhc3MgPT0gaWMtPmlj X2NsYXNzKSAmJgorCUxJS0VMWShjcmVmLT5uZF9vbW9kID09IGljLT5pY19vbW9kKSAmJgogCUxJ S0VMWShHRVRfVk1fU1RBVEVfVkVSU0lPTigpID09IGljLT5pY192bXN0YXQpKSB7CiAJbWUgPSBp Yy0+aWNfdmFsdWUubWV0aG9kOwogCWlmIChkZWZpbmVkX2NsYXNzX3B0cikKQEAgLTEzODQsMTAg KzEzODcsMTIgQEAgdm1fbWV0aG9kX3NlYXJjaChWQUxVRSBpZCwgVkFMVUUga2xhc3MsIElDIGlj LCBWQUxVRSAqZGVmaW5lZF9jbGFzc19wdHIpCiAgICAgfQogICAgIGVsc2UgewogCVZBTFVFIGRl ZmluZWRfY2xhc3M7Ci0JbWUgPSByYl9tZXRob2RfZW50cnkoa2xhc3MsIGlkLCAmZGVmaW5lZF9j bGFzcyk7CisJbWUgPSByYl9tZXRob2RfZW50cnlfZ2V0X3dpdGhfb21vZChjcmVmLT5uZF9vbW9k LCBrbGFzcywgaWQsCisJCQkJCSAgICZkZWZpbmVkX2NsYXNzKTsKIAlpZiAoZGVmaW5lZF9jbGFz c19wdHIpCiAJICAgICpkZWZpbmVkX2NsYXNzX3B0ciA9IGRlZmluZWRfY2xhc3M7CiAJaWMtPmlj X2NsYXNzID0ga2xhc3M7CisJaWMtPmljX29tb2QgPSBjcmVmLT5uZF9vbW9kOwogCWljLT5pY192 YWx1ZS5tZXRob2QgPSBtZTsKIAlpYy0+aWNfdmFsdWUyLmRlZmluZWRfY2xhc3MgPSBkZWZpbmVk X2NsYXNzOwogCWljLT5pY192bXN0YXQgPSBHRVRfVk1fU1RBVEVfVkVSU0lPTigpOwo= --001636831b208015be049695f051--