From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.8 required=3.0 tests=AWL,BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 0825F1F4C0 for ; Sat, 26 Oct 2019 15:23:43 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 82C161209D6; Sun, 27 Oct 2019 00:23:32 +0900 (JST) Received: from xtrwkhkc.outbound-mail.sendgrid.net (xtrwkhkc.outbound-mail.sendgrid.net [167.89.16.28]) by neon.ruby-lang.org (Postfix) with ESMTPS id 648D51209D0 for ; Sun, 27 Oct 2019 00:23:29 +0900 (JST) Received: by filter0052p3iad2.sendgrid.net with SMTP id filter0052p3iad2-4198-5DB464F2-24 2019-10-26 15:23:30.354456627 +0000 UTC m=+406515.427368883 Received: from herokuapp.com (unknown [54.234.136.181]) by ismtpd0002p1iad1.sendgrid.net (SG) with ESMTP id bEMoL9l7Tl2q2qAWkjzZFg for ; Sat, 26 Oct 2019 15:23:30.173 +0000 (UTC) Date: Sat, 26 Oct 2019 15:23:30 +0000 (UTC) From: merch-redmine@jeremyevans.net Message-ID: References: Mime-Version: 1.0 X-Redmine-MailingListIntegration-Message-Ids: 71159 X-Redmine-Project: ruby-trunk X-Redmine-Issue-Id: 16278 X-Redmine-Issue-Author: cristiangreco X-Redmine-Sender: jeremyevans0 X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-SG-EID: =?us-ascii?Q?RVE3t853K5scBhbmJHUzZTFFeVC=2FZSUmHZ0Dc+26wcEi2CTgsF1oz0wTSSxGGN?= =?us-ascii?Q?BIFQbm0m0jMR775cZx+jaeOwp=2FUw9saa=2FOeSETt?= =?us-ascii?Q?YpJmti38gm0ChyzOyedQknuWjtMCPDY+nhJUA4z?= =?us-ascii?Q?PMtXC7WozGUzpVrgyDGQ+mT2M72PMx1EDO=2FYYqI?= =?us-ascii?Q?AqdbrT=2F4=2FaB35M=2FpSAol6aymvqGPsJ1wB0Q=3D=3D?= To: ruby-core@ruby-lang.org X-ML-Name: ruby-core X-Mail-Count: 95566 Subject: [ruby-core:95566] [Ruby master Bug#16278] Potential memory leak when an hash is used as a key for another hash X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Ruby developers List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE2Mjc4IGhhcyBiZWVuIHVwZGF0ZWQgYnkgamVyZW15ZXZhbnMwIChKZXJlbXkgRXZh bnMpLg0KDQpTdGF0dXMgY2hhbmdlZCBmcm9tIE9wZW4gdG8gUmVqZWN0ZWQNCg0KY3Jpc3RpYW5n cmVjbyAoQ3Jpc3RpYW4gR3JlY28pIHdyb3RlOg0KPiBIaSBKZXJlbXksIHRoYW5rcyBmb3IgdGhl c2UgZGV0YWlscyENCj4gDQo+IEkgZG9u4oCZdCBrbm93IHRoZSBkZXRhaWxzIG9mIHJ1YnnigJlz IEdDLCBzZWVtcyB0byBtZSBpdCBtaWdodCBiZWhhdmUgdW5wcmVkaWN0YWJseSBzb21ldGltZXMu IEkgZ3Vlc3Mgd2hhdCBjb25mdXNlcyBtZSBub3cgaXMgdGhhdCBhbHRob3VnaCB0aGF0IG9iamVj dCBpcyByZXRhaW5lZCB3ZSBkb27igJl0IG9ic2VydmUgdW5ib3VuZGVkIG1lbW9yeSBncm93dGgg d2hlbiBjYWxsaW5nIHRoZSBtZXRob2QgaW4gYSBsb29wOiBpcyBpdCBldmVudHVhbGx5IGNvbGxl Y3RlZD8gSXMgaXQgc29tZWhvdyByZS11c2VkLCBvciB3aGF0PyANCg0KSXQgaXMgZXZlbnR1YWxs eSBjb2xsZWN0ZWQgd2hlbiBSdWJ5J3MgR0MgY2FuIG5vIGxvbmdlciBmaW5kIGEgcmVmZXJlbmNl IHRvIGl0LiAgVGhlIHJlYXNvbiBpdCBtYXkgYmUgcmV0YWluZWQgZXZlbiB0aG91Z2ggdGhlcmUg aXMgbm8gZGlyZWN0IHJlZmVyZW5jZSB0byBpdCBpbiBSdWJ5IGlzIHRoYXQgcG9pbnRlcnMgdG8g dGhlIG9iamVjdCBtYXkgc3RpbGwgZXhpc3Qgc29tZXdoZXJlIG9uIHRoZSB0aGUgQy9SdWJ5IHN0 YWNrLiAgUnVieSdzIEdDIGlzIGNvbnNlcnZhdGl2ZSwgcGFydCBvZiB0aGUgc2NhbiBmb3Igb2Jq ZWN0cyBpcyBqdXN0IGxvb2tpbmcgYXQgYXQgc3RhY2sgbWVtb3J5LCBhbmQgaWYgYW55IG1lbW9y eSBjb3VsZCBiZSBjb25zaWRlcmVkIGEgcG9pbnRlciB0byBhIFJ1Ynkgb2JqZWN0LCB0aGF0IFJ1 Ynkgb2JqZWN0IGlzIHJldGFpbmVkIGR1cmluZyB0aGF0IEdDIHBhc3MuDQoNClRoaXMgY29uc2Vy dmF0aXZlIEdDIGlzIG5lZWRlZCB0byBtYWtlIEMgZXh0ZW5zaW9ucyB3b3JrLiAgQyBsb2NhbCB2 YXJpYWJsZXMgbWF5IGhvbGQgcG9pbnRlcnMgdG8gUnVieSBvYmplY3RzLCBhbmQgY29sbGVjdGlu ZyB0aGUgUnVieSBvYmplY3RzIHdoaWxlIHRoZXJlIGlzIGEgQyBsb2NhbCB2YXJpYWJsZSBwb2lu dGluZyB0byB0aGVtIGNhbiBjYXVzZSB1bmRlZmluZWQgYmVoYXZpb3IgKG9mdGVuIGEgc2VnZmF1 bHQpLg0KDQo+IEFub3RoZXIgdGhpbmcgdGhhdCBpbnRyaWd1ZXMgbWUgaXMgdGhhdCB0aGlzIGJl aGF2aW91ciBpcyBub3QgYWx3YXlzIGNvbnNpc3RlbnQ6IGl0IG1pZ2h0IHZhcnkgYWNyb3NzIGRp ZmZlcmVudCBydWJ5IGJ1aWxkcyAoeW91IG1lbnRpb25lZCB0aGF0IG1lbW9yeSBsYXlvdXQgYW5k IGNvbXBpbGVyIG9wdGltaXNhdGlvbnMgbWlnaHQgYWZmZWN0IHRoZSBvdXRwdXQpIGFuZCBpcyBh bHNvIHN1YnRseSBpbmZsdWVuY2VkIGJ5IGNvZGUgY2hhbmdlcy4gRm9yIGV4YW1wbGUsIGlmIEkg YWRkIHRoaXMgbGluZSBgcHV0cyBPYmplY3RTcGFjZS5jb3VudF9vYmplY3RzWzpUX0hBU0hdYCBq dXN0IGFmdGVyIHRoZSBjYWxsIHRvIGBjcmVhdGVgIHRoZW4gYGg0YCBpcyBhbG1vc3QgbmV2ZXIg Zm91bmQgYWZ0ZXIgR0MgKG9yIGl0cyByZWZlcmVuY2UgaXMgZm91bmQgYXNzb2NpYXRlZCB0byBh bm90aGVyIG9iamVjdCkuIE5vdCBzdXJlIHdoeSB0aGlzIGhhcHBlbnMgdGhvdWdoIQ0KDQpJdCBo YXBwZW5zIGJlY2F1c2UgdGhlIG1lbW9yeSBsYXlvdXQgY2hhbmdlZCwgYW5kIHRoZXJlIGFyZSBu byBsb25nZXIgbG9jYXRpb25zIGluIG1lbW9yeSBvbiB0aGUgc3RhY2sgdGhhdCBwb2ludCB0byB0 aGUgb2JqZWN0cy4NCg0KPiBub2J1IChOb2J1eW9zaGkgTmFrYWRhKSB3cm90ZToNCj4gPiBBZGRp bmcgdGhpcyBtZXRob2QgYW5kIGNhbGxpbmcgaXQgYWZ0ZXIgYGNyZWF0ZWAgY2xlYXJzIHRoZSBv dXRwdXQuDQo+ID4gDQo+ID4gYGBgcnVieQ0KPiA+IGRlZiBnYXJiYWdlDQo+ID4gICBoMSA9IGgy ID0gaDMgPSBoNCA9IGg1ID0gaDYgPSBoNyA9IGg4ID0gaDkgPSBoMTAgPSBuaWwNCj4gPiBlbmQN Cj4gPiBgYGANCj4gPiANCj4gPiBTbyBhIOKAnHNoYWRvd+KAnSBzZWVtcyBzdGF5aW5nIG9uIHRo ZSBWTSBzdGFjay4NCj4gDQo+IEhleSBOb2J1LCB3aGF0IGlzIGdvaW5nIG9uIGhlcmU/IFdoYXQg bWVhbnMgdGhhdCBhIHNoYWRvdyBpcyByZXRhaW5lZCBvbiB0aGUgc3RhY2s/DQoNCkl0IGp1c3Qg bWVhbnMgdGhlcmUgYXJlIGxvY2F0aW9ucyBpbiBtZW1vcnkgb24gdGhlIHN0YWNrIHRoYXQgcG9p bnQgdG8gdGhlIFJ1Ynkgb2JqZWN0cy4gIEJ5IGNhbGxpbmcgYW5vdGhlciBtZXRob2QgdGhhdCBz ZXRzIGEgYnVuY2ggb2YgbG9jYWwgdmFyaWFibGVzLCB0aGUgbG9jYXRpb25zIGluIG1lbW9yeSB0 aGF0IHByZXZpb3VzbHkgcG9pbnRlZCB0byB0aGUgaGFzaGVzIG5vdyBhcmUgbW9kaWZpZWQgdG8g Y29udGFpbiBgbmlsYCAoYFFuaWxgIGluIEMsIDB4NCBvciAweDggZGVwZW5kaW5nIG9uIHByb2Nl c3NvciB0eXBlKS4gIFNpbmNlIG5vIGxvY2F0aW9ucyBpbiBtZW1vcnkgcG9pbnQgdG8gdGhlIGhh c2hlcywgdGhlIGhhc2hlcyBjYW4gdGhlbiBiZSBHQ2VkLg0KDQpIb3BlZnVsbHkgdGhhdCBwcm92 aWRlcyBhbiBhZGVxdWF0ZSBleHBsYW5hdGlvbiBmb3IgUnVieSdzIEdDLiAgRm9yIG1vcmUgYmFj a2dyb3VuZCwgcGxlYXNlIHJldmlldyBzb21lIGNvbmZlcmVuY2UgcHJlc2VudGF0aW9ucyBieSBA a28xIDogIGh0dHA6Ly93d3cuYXRkb3QubmV0L35rbzEvYWN0aXZpdGllcy8uICBJJ20gZ29pbmcg dG8gY2xvc2UgdGhpcyBub3cuICBQbGVhc2Ugb25seSByZW9wZW4gaWYgeW91IGNhbiBzaG93IGEg Y2FzZSB3aXRoIHVuYm91bmRlZCBtZW1vcnkgZ3Jvd3RoLg0KDQotLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpCdWcgIzE2Mjc4OiBQb3RlbnRpYWwgbWVtb3J5IGxlYWsg d2hlbiBhbiBoYXNoIGlzIHVzZWQgYXMgYSBrZXkgZm9yIGFub3RoZXIgaGFzaA0KaHR0cHM6Ly9i dWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE2Mjc4I2NoYW5nZS04MjM0Nw0KDQoqIEF1dGhvcjog Y3Jpc3RpYW5ncmVjbyAoQ3Jpc3RpYW4gR3JlY28pDQoqIFN0YXR1czogUmVqZWN0ZWQNCiogUHJp b3JpdHk6IE5vcm1hbA0KKiBBc3NpZ25lZTogDQoqIFRhcmdldCB2ZXJzaW9uOiANCiogcnVieSAt djogcnVieSAyLjYuNXAxMTQgKDIwMTktMTAtMDEgcmV2aXNpb24gNjc4MTIpIFt4ODZfNjQtZGFy d2luMThdDQoqIEJhY2twb3J0OiAyLjU6IFVOS05PV04sIDIuNjogVU5LTk9XTg0KLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KSGksDQoNCkkndmUgYmVlbiBoaXR0aW5n IHdoYXQgc2VlbXMgdG8gYmUgYSBtZW1vcnkgbGVhay4NCg0KV2hlbiBhbiBoYXNoIGlzIHVzZWQg YXMga2V5IGZvciBhbm90aGVyIGhhc2gsIHRoZSBmb3JtZXIgb2JqZWN0IHdpbGwgYmUgcmV0YWlu ZWQgZXZlbiBhZnRlciBtdWx0aXBsZSBHQyBydW5zLg0KDQpUaGUgZm9sbG93aW5nIGNvZGUgc25p cHBldCBkZW1vbnN0cmF0ZXMgaG93IHRoZSBoYXNoIGB7OmEgPT4gMX1gICh3aGljaCBpcyBuZXZl ciB1c2VkIG91dHNpZGUgdGhlIHNjb3BlIG9mIGBjcmVhdGVgKSBpcyByZXRhaW5lZCBldmVuIGFm dGVyIDEwIEdDIHJ1bnMgKGBmaW5kYCB3aWxsIGxvb2sgZm9yIGFuIG9iamVjdCB3aXRoIGEgZ2l2 ZW4gYG9iamVjdF9pZGAgb24gaGVhcCkuDQoNCg0KYGBgcnVieQ0KIyBmcm96ZW5fc3RyaW5nX2xp dGVyYWw6IHRydWUNCg0KZGVmIGNyZWF0ZQ0KICBoID0ge3s6YSA9PiAxfSA9PiAyfQ0KICBoLmtl eXMuZmlyc3Qub2JqZWN0X2lkDQplbmQNCg0KZGVmIGZpbmQob2JqZWN0X2lkKQ0KICBPYmplY3RT cGFjZS5lYWNoX29iamVjdChIYXNoKS5hbnk/e3xofCBoLm9iamVjdF9pZCA9PSBvYmplY3RfaWR9 ID8gMSA6IDANCmVuZA0KDQoNCmxlYWtlZCA9IGNyZWF0ZQ0KDQoxMC50aW1lcyBkbw0KICBHQy5z dGFydChmdWxsX21hcms6IHRydWUsIGltbWVkaWF0ZV9zd2VlcDogdHJ1ZSkNCmVuZA0KDQpleGl0 IGZpbmQobGVha2VkKQ0KYGBgDQoNClRoaXMgY29kZSBzbmlwcGV0IGlzIGV4cGVjdGVkIHRvIGV4 aXQgd2l0aCBgMGAgd2hpbGUgaXQgZXhpdHMgd2l0aCBgMWAgaW4gbXkgdGVzdHMuIEkndmUgdGVz dGVkIHRoaXMgb24gbXVsdGlwbGUgcmVjZW50IHJ1YnkgdmVyc2lvbnMgYW5kIE9TcywgZWl0aGVy IGxvY2FsbHkgKE9TWCB3aXRoIGhvbWVicmV3KSBvciBpbiBkaWZmZXJlbnQgQ0lzIChlLmcuIFto ZXJlXShodHRwczovL2dpdGh1Yi5jb20vY3Jpc3RpYW5ncmVjby9ydWJ5LWhhc2gtbGVhay9jb21t aXQvMjg1ZTU4NmI3MTkzMTA0OTg5ZjU5YjkyNTc5ZmU4ZjI1NzcwMTQxZS9jaGVja3M/Y2hlY2tf c3VpdGVfaWQ9Mjc4NzExNTY2KSkuDQoNCkNhbiB5b3UgcGxlYXNlIGhlbHAgdW5kZXJzdGFuZCB3 aGF0J3MgZ29pbmcgb24gaGVyZT8gVGhhbmtzIQ0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVi eS1sYW5nLm9yZy8NCg==