[ruby-core:105787] [Ruby master Feature#17837] Add support for Regexp timeouts
From:
"Eregon (Benoit Daloze)" <noreply@...>
Date:
2021-10-25 11:17:35 UTC
List:
ruby-core #105787
SXNzdWUgIzE3ODM3IGhhcyBiZWVuIHVwZGF0ZWQgYnkgRXJlZ29uIChCZW5vaXQgRGFsb3plKS4K CgpXaGF0IGlmIHRoZSB0aW1lIGJldHdlZW4gdHdvIGJhY2t0cmFja3MgaXMgbXVjaCBsYXJnZXIg Zm9yIHNvbWUgUmVnZXhwLCBpc24ndCB0aGF0IHBvc3NpYmxlIHdpdGggbWFueSBjaGFyYWN0ZXJz IGJlaW5nIG1hdGNoZWQgYW5kIHRoZW4gYXQgdGhlIGVuZCBhIHBvc3NpYmxlIGJhY2t0cmFjaz8g KGUuZy4sIHNvbWV0aGluZyBsaWtlIGAvKGF7MTAwMDAwfXxiezEwMDAwMH0pKi9gKQpJZiBzbywg aXQgc291bmRzIGxpa2UgMTAwMDAgYmFja3RyYWNrcyBjb3VsZCBiZSBlaXRoZXIgbWljcm9zZWNv bmRzIG9yIHNlY29uZHMsIGkuZS4sIG5vdCBuZWNlc3NhcmlseSByZWxhdGVkIHRvIHRpbWUsIGFu ZCB0aGUgYXBwcm9hY2ggd291bGQgbm90IHdvcmsgZm9yIHNvbWUgUmVnZXhwcyB3aGljaCBiYWNr dHJhY2suCgpJTUhPIGEgYmV0dGVyIHNvbHV0aW9uIHRvIHRoaXMgaXMgaHR0cHM6Ly95b3V0dS5i ZS9EWVBDa1I3Tmd4OD90PTEyMzEgLyBodHRwczovL2VyZWdvbi5tZS9ibG9nL2Fzc2V0cy9yZXNl YXJjaC9qdXN0LWluLXRpbWUtY29tcGlsaW5nLXJ1YnktcmVnZXhwcy1vbi10cnVmZmxlcnVieS5w ZGYgc2xpZGUgMTggKHdoaWNoIGlzIHdoYXQgVHJ1ZmZsZVJ1YnkgZG9lcykuCmkuZS4sIHVzZSBh IGF1dG9tYXRvbi1iYXNlZCByZWdleHAgZW5naW5lICh3aGljaCBhbHdheXMgbWF0Y2hlcyBpbiBs aW5lYXIgdGltZSkgYW5kIHdhcm4gZm9yIHJlZ2V4cHMgd2hpY2ggY2FuJ3QgYmUgcnVuIGJ5IGl0 IChjYWxsZWQgInNsb3cgcmVnZXhwcyIpLgpUaG9zZSBzbG93IHJlZ2V4cHMgc2hvdWxkIHRoZW4g YmUgcmV2aWV3ZWQgYW5kIGlkZWFsbHkgcmV3cml0dGVuIHNvIHRoZXkgY2FuIGJlIG1hdGNoZWQg YnkgdGhlIGF1dG9tYXRvbi1iYXNlZCByZWdleHAgZW5naW5lLgpUaGV5IGNvdWxkIGFsc28gaGF2 ZSBhIHRpbWVvdXQgaWYgbmVlZGVkLCB3aXRoIG11Y2ggbGVzcyBpbXBhY3QgdGhhbiBvbiBhbGwg cmVnZXhwcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRmVhdHVy ZSAjMTc4Mzc6IEFkZCBzdXBwb3J0IGZvciBSZWdleHAgdGltZW91dHMKaHR0cHM6Ly9idWdzLnJ1 YnktbGFuZy5vcmcvaXNzdWVzLzE3ODM3I2NoYW5nZS05NDMwNAoKKiBBdXRob3I6IHNhbS5zYWZm cm9uIChTYW0gU2FmZnJvbikKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyMjIEJhY2tncm91bmQKClJlRG9T IGFyZSBhIHZlcnkgY29tbW9uIHNlY3VyaXR5IGlzc3VlLiBBdCBEaXNjb3Vyc2Ugd2UgaGF2ZSBz ZWVuIGEgZmV3IHRocm91Z2ggdGhlIHllYXJzLiBodHRwczovL293YXNwLm9yZy93d3ctY29tbXVu aXR5L2F0dGFja3MvUmVndWxhcl9leHByZXNzaW9uX0RlbmlhbF9vZl9TZXJ2aWNlXy1fUmVEb1MK CkluIGEgbnV0c2hlbGwgdGhlcmUgYXJlIDEwMHMgb2Ygd2F5cyB0aGlzIGNhbiBoYXBwZW4gaW4g cHJvZHVjdGlvbiBhcHBzLCB0aGUga2V5IGlzIGZvciBhbiBhdHRhY2tlciAob3IgcG9zc2libHkg aW5ub2NlbnQgcGVyc29uKSB0byBzdXBwbHkgZWl0aGVyIGEgcHJvYmxlbWF0aWMgUmVnZXhwIG9y IGEgYmFkIHN0cmluZyB0byB0ZXN0IGl0IHdpdGguCgpgYGAKL0EoQnxDKykrRC8gPX4gIkEiICsg IkMiICogMTAwICsgIlgiCmBgYAoKSGF2aW5nIGEgcHJvYmxlbSBSZWdleHAgc29tZXdoZXJlIGlu IGEgbGFyZ2UgYXBwIGlzIGEgdW5pdmVyc2FsIGNvbnN0YW50LCBpdCB3aWxsIGhhcHBlbiBhcyBs b25nIGFzIHlvdSBhcmUgdXNpbmcgUmVnZXhwcy4gCgoKQ3VycmVudGx5IHRoZSBvbmx5IGZlYXNp YmxlIHdheSBvZiBzdXBwbHlpbmcgYSBjb25zaXN0ZW50IHNhZmVndWFyZCBpcyBieSB1c2luZyBg VGhyZWFkLnJhaXNlYCBhbmQgbWFuYWdpbmcgYWxsIGV4ZWN1dGlvbi4gVGhpcyBraW5kIG9mIHBh dHRlcm4gcmVxdWlyZXMgdXNhZ2Ugb2YgYSB0aGlyZCBwYXJ0eSBpbXBsZW1lbnRhdGlvbi4gVGhl cmUgYXJlIHBvc3NpYmx5IGlzc3VlcyB3aXRoIGpSdWJ5IGFuZCBUcnVmZmxlIHdoZW4gdGFraW5n IGFwcHJvYWNoZXMgbGlrZSB0aGlzLgoKIyMjIFByaW9yIGFydAoKLk5FVCBwcm92aWRlcyBhIGBN YXRjaFRpbWVvdXRgIHByb3BlcnR5IHBlcjogaHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20vZW4t dXMvZG90bmV0L2FwaS9zeXN0ZW0udGV4dC5yZWd1bGFyZXhwcmVzc2lvbnMucmVnZXgubWF0Y2h0 aW1lb3V0P3ZpZXc9bmV0LTUuMAoKSmF2YSBoYXMgbm90aGluZyBidWlsdCBpbiBhcyBmYXIgYXMg SSBjYW4gdGVsbDogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvOTEwNzQwL2Nh bmNlbGxpbmctYS1sb25nLXJ1bm5pbmctcmVnZXgtbWF0Y2gKCk5vZGUgaGFzIG5vdGhpbmcgYnVp bHQgaW4gYXMgZmFyIGFzIEkgY2FuIHRlbGw6IGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVl c3Rpb25zLzM4ODU5NTA2L2NhbmNlbC1yZWdleC1tYXRjaC1pZi10aW1lb3V0CgoKR29sYW5nIGFu ZCBSdXN0IHVzZXMgUkUyIHdoaWNoIGlzIG5vdCB2dWxuZXJhYmxlIHRvIERvUyBieSBsaW1pdGlu ZyBmZWF0dXJlcyAoYXZhaWxhYmxlIGluIFJ1YnkgUkUyIGdlbSkKCmBgYAppcmIobWFpbik6MDAz OjA+IHIgPSBSRTI6OlJlZ2V4cC5uZXcoJ0EoQnxDKykrRCcpCj0+ICM8UkUyOjpSZWdleHAgL0Eo QnxDKykrRC8+CmlyYihtYWluKTowMDQ6MD4gci5tYXRjaCgiQSIgKyAiQyIgKiAxMDAgKyAiWCIp Cj0+IG5pbApgYGAKCiMjIyBQcm9wb3NhbAoKSW1wbGVtZW50IGBSZWdleHAudGltZW91dGAgd2hp Y2ggYWxsb3cgdXMgdG8gc3BlY2lmeSBhIGdsb2JhbCB0aW1lb3V0IGZvciBhbGwgUmVnZXhwIG9w ZXJhdGlvbnMgaW4gUnVieS4gCgpQZXIgUmVnZXhwIHdvdWxkIHJlcXVpcmUgbWFzc2l2ZSBhcHBs aWNhdGlvbiBjaGFuZ2VzLCBhbG1vc3QgYWxsIHdlYiBhcHBzIHdvdWxkIGRvIGp1c3QgZmluZSB3 aXRoIGEgMSBzZWNvbmQgUmVnZXhwIHRpbWVvdXQuCgpJZiBgdGltZW91dGAgaXMgc2V0IHRvIGBu aWxgIGV2ZXJ5dGhpbmcgd291bGQgd29yayBhcyBpdCBkb2VzIHRvZGF5LCB3aGVuIHNldCB0byBz ZWNvbmQgYSAibW9uaXRvciIgdGhyZWFkIHdvdWxkIHRyYWNrIHJ1bm5pbmcgcmVnZXhwcyBhbmQg dGltZSB0aGVtIG91dCBhY2NvcmRpbmcgdG8gdGhlIGdsb2JhbCB2YWx1ZS4KCiMjIyBBbHRlcm5h dGl2ZXMgCgpJIHJlY29tbWVuZCBhZ2FpbnN0IGEgInBlciBSZWdleHAiIEFQSSBhcyB0aGlzIGRl Y2lzaW9uIGlzIGF0IHRoZSBhcHBsaWNhdGlvbiBsZXZlbC4gWW91IHdhbnQgdG8gYXBwbHkgaXQg dG8gYWxsIHJlZ3VsYXIgZXhwcmVzc2lvbnMgaW4gYWxsIHRoZSBnZW1zIHlvdSBhcmUgY29uc3Vt aW5nLgoKSSByZWNvbW1lbmQgYWdhaW5zdCBhIG1vdmUgdG8gUkUyIGF0IHRoZSBtb21lbnQgYXMg d2F5IHRvbyBtdWNoIHdvdWxkIGJyZWFrIAoKCiMjIyBTZWUgYWxzbzogCgpodHRwczovL3Blb3Bs ZS5jcy52dC5lZHUvZGF2aXNqYW0vZG93bmxvYWRzL3B1YmxpY2F0aW9ucy9EYXZpcy1EaXNzZXJ0 YXRpb24tMjAyMC5wZGYKaHR0cHM6Ly9sZXZlbHVwLmdpdGNvbm5lY3RlZC5jb20vdGhlLXJlZ3Vs YXItZXhwcmVzc2lvbi1kZW5pYWwtb2Ytc2VydmljZS1yZWRvcy1jaGVhdC1zaGVldC1hNzhkMGVk N2Q4NjUKCgoKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTog PG1haWx0bzpydWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3Jp YmU+CjxodHRwOi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9y dWJ5LWNvcmU+Cg==