Re: [Sbcl-commits] master: pathnames: fix dot escaping with multiple preceding escapes

Stas Boukarev <[email protected]> Tue, 14 Apr 2026 16:15:44 +0300
Newsgroups gmane.lisp.steel-bank.devel
Message-ID <CAF63=11HwY+i0A5MzrUt_juNK=ZPKJYG0eVq8HANPy+6M6+f4Q@mail.gmail.com>
SSBkaWRuJ3QgY2hhbmdlIHRoZSBkb3QgZXNjYXBpbmcgaW5zaWRlIFtdLiBCdXQgSSBhZ3JlZSB0
aGF0IFxcIGluc2lkZQpbXSBzaG91bGQgYmVoYXZlIGp1c3QgbGlrZSBvdXRzaWRlIG9mIFtdLgpJ
IHdvdWxkbid0IHNheSB0aGF0IFthXFxdIGlzIHJlYWxseSBhbiBpbmNvbXBhdGlibGUgY2hhbmdl
LCBvbmx5IGlmCnNvbWVib2R5IGRlcGVuZHMgb24gYSBidWdneSBpbXBsZW1lbnRhdGlvbi4KQ29t
cGFyaW5nIGl0IHRvIHNoZWxsLAppbiBiYXNoLCBbYWJcXSBkb2Vzbid0IHdvcmssIChUaGUgZGlm
ZmVyZW5jZSBvZiBcXCBtaWdodCBiZSBjb25mdXNpbmcsCmR1ZSB0byB0aGUgbGlzcCBzdHJpbmcg
ZXNjYXBpbmcpLgpbYS5iXSB3b3JrcyBhcyBpcyBpbiBzaGVsbCwgc2luY2UgaXQgZG9lc24ndCBz
cGxpdCB0aGUgcGF0aG5hbWUgaW50bwpmaWxlbmFtZSBhbmQgdHlwZS4KCk9uIFR1ZSwgQXByIDE0
LCAyMDI2IGF0IDM6NTTigK9QTSBSaWNoYXJkIE0gS3JldXRlciB2aWEgU2JjbC1kZXZlbAo8c2Jj
bC1kZXZlbEBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQ+IHdyb3RlOgo+Cj4gSGkgU3RhcywKPgo+IFRo
aXMgb25lIGFuZCBpdHMgcGFyZW50IGZpeCBhIGNvdXBsZSBidWdzIChuYW1lc3RyaW5nIGJyYWNr
ZXQgbm90YXRpb24KPiBkaWRuJ3QgYWxsb3cgYSBjaGFyYWN0ZXIgc2V0IHRvIGNvbnRhaW4gYSBy
aWdodCBicmFja2V0IG9yIGEgZG90KSwgYnV0Cj4gSU1PIHRoZXNlIGFyZW4ndCB0aGUgYmVzdCB3
YXlzIHRvIGRvIGl0Lgo+Cj4gMS4gVGhlIHBhcmVudCBpcyBhIG1pbm9yIGluY29tcGF0aWJsZSBj
aGFuZ2U6IChwYXJzZS1uYW1lc3RyaW5nICJbYVxcXSIpCj4gICAgdXNlZCBwYXJzZSB0byAjPFNC
LUlNUEw6OlBBVFRFUk4gKDpDSEFSQUNURVItU0VUIC4gImFcXCIpPi4gTm93IGl0J3MKPiAgICBh
IHBhcnNpbmcgZXJyb3IuCj4KPiAyLiBJdCBhcHBlYXJzIHRoYXQgdGhlIG5ldyBwYXJzZSBvZiAi
W2FcXF1dIiBpcwo+ICAgICM8U0ItSU1QTDo6UEFUVEVSTiAoOkNIQVJBQ1RFUi1TRVQgLiAiYVxc
XSIpPiwgYW5kIG9mICJbYVxcLmJdIgo+ICAgICM8U0ItSU1QTDo6UEFUVEVSTiAoOkNIQVJBQ1RF
Ui1TRVQgLiAiYVxcLmIiKT4uIFRoYXQgaXMsIHRoZSBlc2NhcGUKPiAgICBjaGFyYWN0ZXIgaXMg
aW5jbHVkZWQgaW4gdGhlIGNoYXJhY3RlciBzZXQuIEkgdGhpbmsgdGhpcyB3b3VsZCBiZSBhCj4g
ICAgYnVnLCByaWdodD8KPgo+IDMuICJbYVxcXSIgdXNlZCB0byBtYXRjaCB0aGUgc2FtZSBmaWxl
bmFtZXMgaW4gTGlzcCBhcyBpdCB3b3VsZCBhdCBhCj4gICAgVW5peCBzaGVsbC4gQWx0aG91Z2gs
IFNCQ0wncyB3aWxkY2FyZHMgZG9uJ3QgZG8gZXZlcnl0aGluZyBQT1NJWAo+ICAgIGZubWF0Y2go
KSBvciBnbG9iKCkgY2FuLCBJJ3ZlIGZvdW5kIGl0IHVzZWZ1bCB0aGF0IFNCQ0wncyB3aWxkY2Fy
ZAo+ICAgIHN5bnRheCBoYXMgYmVlbiBzb21ld2hhdCBjb21wYXRpYmxlIHdpdGggVW5peCBzaGVs
bCdzLCBzaW5jZSB0aGF0Cj4gICAgYWxsb3dzIGNvcHktbi1wYXN0aW5nIHNvbWV0aW1lcy4gVXNp
bmcgdGhlIExpc3AgbmFtZXN0cmluZyBlc2NhcGUKPiAgICBjaGFyYWN0ZXIgYmV0d2VlbiByaWdo
dCBicmFja2V0cyBpbmNyZWFzZXMgaW5jb21wYXRpYmlsaXR5IGEgYml0Lgo+Cj4gU28gSSdkIHBy
b3Bvc2U6Cj4KPiAtIG1ha2UgdGhlIG5hbWVzdHJpbmcgbm90YXRpb24gZm9yIGEgY2hhcmFjdGVy
IHNldCBjb250YWluaW5nIHJpZ2h0Cj4gICBicmFja2V0IGFuZCAiYWJjIiBiZSAiW11hYmNdIiAo
aS5lLiwgcHV0IHRoZSByaWdodCBicmFja2V0IGZpcnN0KS4KPgo+IC0gdHJlYXQgYm90aCBhIGRv
dCBhbmQgdGhlIG5hbWVzdHJpbmcgZXNjYXBlIGNoYXJhY3RlciBhcyBsaXRlcmFscwo+ICAgYmV0
d2VlbiBicmFja2V0cy4KPgo+IFRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSBub3RhdGlvbnMg
d291bGQgYmUKPgo+ICAgeW91ciBub3RhdGlvbiAgICAgICAgICAgICAgbXkgcHJvcG9zZWQgbm90
YXRpb24gKHNhbWUgb24gVW5peC9XaW5kb3dzKQo+ICAgIltcXF1hYmNdIiBvciAiW15dYWJjXSIg
ICAgIltdYWJjXSIKPiAgICJbXFwuYWJjXSIgb3IgIlteLmFiY10iICAgICJbLmFiY10iIDsgYnV0
IHNlZSB0aGUgTm90ZSBiZWxvdwo+ICAgIltcXFxcYWJjXSIgKFVuaXgpICAgICAgICAgIltcXGFi
Y10iCj4gICAiW15eYWJjXSIgKFdpbmRvd3MpICAgICAgICAiW15hYmNdIgo+Cj4gVGhlIGVhc2ll
c3Qgd2F5IHRvIGRvIHRoZSBzZWNvbmQgdGhpbmcgaXMgdG8gaGF2ZSBwaHlzaWNhbCBuYW1lc3Ry
aW5nCj4gcGFyc2luZyBnbyBzdHJpY3RseSBsZWZ0LXRvLXJpZ2h0LCByYXRoZXIgdGhhbiBkZWNp
ZGluZyB3aGVyZSB0aGUgdHlwZQo+IHNlcGFyYXRvciBpcyB1c2luZyBhIHJpZ2h0LXRvLWxlZnQg
cHJlLXNjYW4uCj4KPiBIZXJlJ3MgYSBjb21taXQgdGhhdCBkb2VzIHRoZXNlIHRoaW5nczsgaXQg
cGFzc2VzIGFsbCBHSCBDSSBydW5zOgo+Cj4gaHR0cHM6Ly9naXRodWIuY29tL3NiY2wvc2JjbC9j
b21taXQvMzQ1NWVjYmM4YjY5OWQxNjFlMGRkODhhM2NkYWJhN2Q1YWZjMjk0MAo+Cj4gKFRoYXQg
Y29tbWl0IGFsc28gbm9ybWFsaXplcyB0aGUgc3R1ZmYgYmV0d2VlbiB0aGUgYnJhY2tldHMsIGUu
Zy4sIHNvCj4gdGhhdCBlLmcuLCAiW2FhYl0iIGFuZCAiW2JhXSIgYm90aCBwYXJzZSB0byAjUCJb
YWJdIiwgd2hpY2ggYWxzbyBtYWtlcwo+IChwYXRobmFtZS1tYXRjaC1wICJbYWJdIiAiW2JhXSIp
IHJldHVybiB0cnVlLiBJIHRoaW5rIHRoYXQncyBhIHNtYWxsCj4gaW1wcm92ZW1lbnQsIGJ1dCBJ
IGd1ZXNzIGl0J3Mgb3J0aG9nb25hbCB0byB0aGUgaXNzdWUgYXQgaGFuZC4pCj4KPiBXaGF0IGRv
IHlvdSB0aGluaz8KPgo+IFRoYW5rcywKPiBSaWNoYXJkCj4KPiBOb3RlOiBZb3VyIG5vdGF0aW9u
IGFuZCBtaW5lIGJvdGggYWxsb3cgYSBkb3QgdG8gYXBwZWFyIGluc2lkZSBhCj4gY2hhcmFjdGVy
IHNldC4gQnV0IHNvIGxvbmcgYXMgUEFUSE5BTUUtTUFUQ0gtUCBvcGVyYXRlcyBjb21wb25lbnQt
d2lzZQo+IG9uIHBoeXNpY2FsIHBhdGhuYW1lcyBlaXRoZXIgb2YKPgo+ICAgKHBhdGhuYW1lLW1h
dGNoLXAgIngueSIgInhbXFwuXXkiKSA7IHlvdXIgbm90YXRpb24KPiAgIChwYXRobmFtZS1tYXRj
aC1wICJ4LnkiICJ4Wy5deSIpICAgOyBteSBwcm9wb3NlZCBub3RhdGlvbgo+Cj4gd2lsbCByZXR1
cm4gbmlsLCBqdXN0IGFzIChwYXRobmFtZS1tYXRjaC1wICJ4LnkueiIgIngueVxcLnoiKSBkb2Vz
LiBJCj4gY29uc2lkZXIgdGhpcyBvcnRob2dvbmFsIHRvIGNob2ljZSBvZiBicmFja2V0IG5vdGF0
aW9uLgo+Cj4KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Xwo+IFNiY2wtZGV2ZWwgbWFpbGluZyBsaXN0Cj4gU2JjbC1kZXZlbEBsaXN0cy5zb3VyY2Vmb3Jn
ZS5uZXQKPiBodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9zYmNs
LWRldmVsCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K
U2JjbC1kZXZlbCBtYWlsaW5nIGxpc3QKU2JjbC1kZXZlbEBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQK
aHR0cHM6Ly9saXN0cy5zb3VyY2Vmb3JnZS5uZXQvbGlzdHMvbGlzdGluZm8vc2JjbC1kZXZlbAo=