From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.bugs Subject: bug#58919: 28.2; dired-copy-file-recursive fails to overwrite directory Date: Fri, 16 Dec 2022 15:22:16 -0800 Message-ID: References: <87y1sws6eq.fsf@posteo.net> <83wn8gdu4k.fsf@gnu.org> <31dc6bb7-ada3-aeac-c65b-d7de4a326026@cs.ucla.edu> <87k04ebhvn.fsf@gmx.de> <83zgbutdz5.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------spzSoMnx7XEjSmlqZ7ykeHer" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="36052"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 Cc: thievol@posteo.net, 58919@debbugs.gnu.org To: Eli Zaretskii , Michael Albinus Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Dec 17 00:23:26 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p6K33-00099O-AL for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 17 Dec 2022 00:23:25 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p6K2m-0003w8-6b; Fri, 16 Dec 2022 18:23:08 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p6K2g-0003vx-3m for bug-gnu-emacs@gnu.org; Fri, 16 Dec 2022 18:23:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p6K2f-0005WV-SN for bug-gnu-emacs@gnu.org; Fri, 16 Dec 2022 18:23:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1p6K2f-0008Ac-OI for bug-gnu-emacs@gnu.org; Fri, 16 Dec 2022 18:23:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 16 Dec 2022 23:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58919 X-GNU-PR-Package: emacs Original-Received: via spool by 58919-submit@debbugs.gnu.org id=B58919.167123295131380 (code B ref 58919); Fri, 16 Dec 2022 23:23:01 +0000 Original-Received: (at 58919) by debbugs.gnu.org; 16 Dec 2022 23:22:31 +0000 Original-Received: from localhost ([127.0.0.1]:52126 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p6K2A-0008A4-4j for submit@debbugs.gnu.org; Fri, 16 Dec 2022 18:22:31 -0500 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:41904) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p6K27-00089w-GE for 58919@debbugs.gnu.org; Fri, 16 Dec 2022 18:22:28 -0500 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id BF554160040; Fri, 16 Dec 2022 15:22:20 -0800 (PST) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id J4R4lV5mtD06; Fri, 16 Dec 2022 15:22:18 -0800 (PST) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id A3A3F160070; Fri, 16 Dec 2022 15:22:18 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.9.2 zimbra.cs.ucla.edu A3A3F160070 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu; s=78364E5A-2AF3-11ED-87FA-8298ECA2D365; t=1671232938; bh=SExGlliaQ42zYBToQ83jmqtw3fILNG9cRrIQSo/T+6w=; h=Content-Type:Message-ID:Date:MIME-Version:Subject:To:From; b=P2KdZ2AskNMO+CS4vHhDzSAxSXYY59bve2L0u0iTbI39V8B+QApApGfTlxXoCmgiu TEfa2h5vElgruGGi5R+kw2y8q0lMVpYUO319/qrRb0Oxa982DlND8vndfApE8Kpxyb dylvY3aDxqSDpA2/8boqkCIS9swXXNju4H0dYaBw= X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id VCbOC8V1SSZi; Fri, 16 Dec 2022 15:22:18 -0800 (PST) Original-Received: from [100.115.92.201] (cpe-172-91-119-151.socal.res.rr.com [172.91.119.151]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 3B0D1160040; Fri, 16 Dec 2022 15:22:18 -0800 (PST) Content-Language: en-US In-Reply-To: <83zgbutdz5.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:251246 Archived-At: This is a multi-part message in MIME format. --------------spzSoMnx7XEjSmlqZ7ykeHer Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 12/11/22 02:46, Eli Zaretskii wrote: > Paul, did you have an opportunity to come up with the patch you > mentioned in this discussion? I'd like to solve this bug for Emacs > 29, please. I hacked on it for a bit and came up with the attached proposed patches to the emacs-29 branch. I have not installed them. These patches address the issues raised by Michael by passing only single arguments to make-directory handlers. That way, we don't need to worry about whether the handlers follow the new convention. At our leisure, perhaps in Emacs 30, we can upgrade the make-directory handlers to support the new convention. --------------spzSoMnx7XEjSmlqZ7ykeHer Content-Type: text/x-patch; charset=UTF-8; name="0001-Use-make-directory-handlers-uniformly.patch" Content-Disposition: attachment; filename="0001-Use-make-directory-handlers-uniformly.patch" Content-Transfer-Encoding: base64 RnJvbSBiZmJiNDYzYzZlMWI3NGM5NjIxMWU0NTRjODBkODU4OGYxODdkY2ZiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBGcmksIDE2IERlYyAyMDIyIDE0OjU1OjQ3IC0wODAwClN1YmplY3Q6IFtQQVRD SCAxLzNdIFVzZSBtYWtlLWRpcmVjdG9yeSBoYW5kbGVycyB1bmlmb3JtbHkKCkZvcm1lcmx5 LCB0aGUgY29kZSBzdXBwb3J0ZWQgYm90aCBtYWtlLWRpcmVjdG9yeSBhbmQKbWFrZS1kaXJl Y3RvcnktaW50ZXJuYWwgaGFuZGxlcnMuIFRoaXMgbGVkIHRvIGNvbmZ1c2lvbiBhbmQgbWVh bnQgdGhhbgppbiBhIGZldyBjYXNlcyAobm5tYWlsZGlyLCBpZG8pIHJlbW90ZSBkaXJlY3Rv cmllcyBjb3VsZCBub3QgYmUgdXNlZCBpbgpzb21lIGNhc2VzLiAgRml4IHRoaXMgYnkgdXNp bmcgb25seSBtYWtlLWRpcmVjdG9yeSBoYW5kbGVycy4KClBlcmhhcHMgdGhlcmUgdXNlZCB0 byBiZSBhIHJlYXNvbiBmb3Igd2h5IHRoZXJlIHdlcmUgYm90aAptYWtlLWRpcmVjdG9yeSBh bmQgbWFrZS1kaXJlY3RvcnktaW50ZXJuYWwgaGFuZGxlcnMsIGJ1dCB3aGF0ZXZlciB0aGF0 CnJlYXNvbiB3YXMsIGl0IHNlZW1zIHRvIGhhdmUgdmFuaXNoZWQgZXZlbiBiZWZvcmUgbm93 LgoKVGhlcmUgaXMgbm8gbG9uZ2VyIGFueSBuZWVkIGZvciBtYWtlLWRpcmVjdG9yeS1pbnRl cm5hbCBoYW5kbGVycywgYXMKdGhlIGZldyByZW1haW5pbmcgY2FsbGVycyB0aGF0IHVzZSBt YWtlLWRpcmVjdG9yeS1pbnRlcm5hbCBkbyBzbyBvbmx5CndoZW4gdGhlcmUgYXJlIG5vIGhh bmRsZXJzLiAgSG93ZXZlciwgdGhpcyBjaGFuZ2Uga2VlcHMgdGhlIGV4aXN0aW5nCm1ha2Ut ZGlyZWN0b3J5LWludGVybmFsIGhhbmRsZXJzIGZvciBub3csIGluIGNhc2UgdGhpcyBjb2Rl IGlzIGV2ZXIKdXNlZCBpbiBvbGRlciBFbWFjcyB2ZXJzaW9ucyB0aGF0IHN0aWxsIGNhbGwg dGhvc2UgaGFuZGxlcnMuCgoqIGxpc3AvZ251cy9ubm1haWxkaXIuZWwgKG5ubWFpbGRpci0t bWtkaXIpOgoqIGxpc3AvaWRvLmVsIChpZG8tZmlsZS1pbnRlcm5hbCk6CiogbGlzcC9uZXQv dHJhbXAtc21iLmVsICh0cmFtcC1zbWItaGFuZGxlLW1ha2UtZGlyZWN0b3J5KToKVXNlIG1h a2UtZGlyZWN0b3J5LCBub3QgbWFrZS1kaXJlY3RvcnktaW50ZXJuYWwuCiogbGlzcC9uZXQv dHJhbXAtc21iLmVsICh0cmFtcC1zbWItaGFuZGxlLW1ha2UtZGlyZWN0b3J5LWludGVybmFs KToKTm93IG9ic29sZXRlLgoqIHNyYy9maWxlaW8uYyAoRm1ha2VfZGlyZWN0b3J5X2ludGVy bmFsKTogRG8gbm90IGxvb2sgZm9yIG9yCnVzZSBhIG1ha2UtZGlyZWN0b3J5LWludGVybmFs IGhhbmRsZXIuCiogdGVzdC9saXNwL2ZpbGVzLXRlc3RzLmVsOgooZmlsZXMtdGVzdHMtZmls ZS1uYW1lLW5vbi1zcGVjaWFsLW1ha2UtZGlyZWN0b3J5LWludGVybmFsKToKUmVtb3ZlLCBh cyB0aGlzIHRlc3QgaW5jb3JyZWN0bHkgYXNzdW1lcyB0aGF0IG1ha2UtZGlyZWN0b3J5LWlu dGVybmFsCm11c3Qgc3VwcG9ydCBoYW5kbGVycy4KLS0tCiBkb2MvbGlzcHJlZi9maWxlcy50 ZXhpICAgfCAgMiAtLQogZXRjL05FV1MgICAgICAgICAgICAgICAgIHwgIDQgKysrKwogbGlz cC9nbnVzL25ubWFpbGRpci5lbCAgIHwgIDIgKy0KIGxpc3AvaWRvLmVsICAgICAgICAgICAg ICB8ICAyICstCiBsaXNwL25ldC90cmFtcC1zbWIuZWwgICAgfCAgMyArKy0KIHNyYy9maWxl aW8uYyAgICAgICAgICAgICB8ICA1IC0tLS0tCiB0ZXN0L2xpc3AvZmlsZXMtdGVzdHMuZWwg fCAxMSAtLS0tLS0tLS0tLQogNyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDIx IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9saXNwcmVmL2ZpbGVzLnRleGkgYi9k b2MvbGlzcHJlZi9maWxlcy50ZXhpCmluZGV4IDRiNDVkODlmOWQwLi41YmNiYWM2Y2ViOCAx MDA2NDQKLS0tIGEvZG9jL2xpc3ByZWYvZmlsZXMudGV4aQorKysgYi9kb2MvbGlzcHJlZi9m aWxlcy50ZXhpCkBAIC0zMzc4LDcgKzMzNzgsNiBAQCBNYWdpYyBGaWxlIE5hbWVzCiBAY29k ZXtsb2FkfSwgQGNvZGV7bG9jay1maWxlfSwKIEBjb2Rle21ha2UtYXV0by1zYXZlLWZpbGUt bmFtZX0sCiBAY29kZXttYWtlLWRpcmVjdG9yeX0sCi1AY29kZXttYWtlLWRpcmVjdG9yeS1p bnRlcm5hbH0sCiBAY29kZXttYWtlLWxvY2stZmlsZS1uYW1lfSwKIEBjb2Rle21ha2UtbmVh cmJ5LXRlbXAtZmlsZX0sCiBAY29kZXttYWtlLXByb2Nlc3N9LApAQCAtMzQ0MCw3ICszNDM5 LDYgQEAgTWFnaWMgRmlsZSBOYW1lcwogQGNvZGV7bG9hZH0sIEBjb2Rle2xvY2stZmlsZX0s CiBAY29kZXttYWtlLWF1dG8tc2F2ZS1maWxlLW5hbWV9LAogQGNvZGV7bWFrZS1kaXJlY0Bk aXNjcmV0aW9uYXJ5e317fXt9dG9yeX0sCi1AY29kZXttYWtlLWRpcmVjQGRpc2NyZXRpb25h cnl7fXt9e310b3J5LWludGVybmFsfSwKIEBjb2Rle21ha2UtbG9jay1maWxlLW5hbWV9LAog QGNvZGV7bWFrZS1uZWFyYnktdGVtcC1maWxlfSwKIEBjb2Rle21ha2UtcHJvY2Vzc30sCmRp ZmYgLS1naXQgYS9ldGMvTkVXUyBiL2V0Yy9ORVdTCmluZGV4IDE1N2ZlOThjOTgzLi5kYmYx NjQyMjA2YiAxMDA2NDQKLS0tIGEvZXRjL05FV1MKKysrIGIvZXRjL05FV1MKQEAgLTQ0Nzcs NiArNDQ3NywxMCBAQCBzZXQgaXMgdG9vIGJpZyB0byB0cmFuc2ZlciB0byBFbWFjcyBldmVy eSB0aW1lIGEgY29tcGxldGlvbiBpcwogbmVlZGVkLiAgVGhlIHRhYmxlIHVzZXMgbmV3ICdl eHRlcm5hbCcgY29tcGxldGlvbiBzdHlsZSBleGNsdXNpdmVseQogYW5kIGNhbm5vdCB3b3Jr IHdpdGggcmVndWxhciBzdHlsZXMgc3VjaCBhcyAnYmFzaWMnIG9yICdmbGV4Jy4KIAorKysr CisqKiBNYWdpYyBmaWxlIGhhbmRsZXJzIGZvciBtYWtlLWRpcmVjdG9yeS1pbnRlcm5hbCBh cmUgbm8gbG9uZ2VyIG5lZWRlZC4KK0luc3RlYWQsIEVtYWNzIHVzZXMgdGhlIGFscmVhZHkt ZXhpc3RpbmcgbWFrZS1kaXJlY3RvcnkgaGFuZGxlcnMuCisKIAwKICogQ2hhbmdlcyBpbiBF bWFjcyAyOS4xIG9uIE5vbi1GcmVlIE9wZXJhdGluZyBTeXN0ZW1zCiAKZGlmZiAtLWdpdCBh L2xpc3AvZ251cy9ubm1haWxkaXIuZWwgYi9saXNwL2dudXMvbm5tYWlsZGlyLmVsCmluZGV4 IGZhYTI4ODkzNGQxLi4zZmI4N2YzYTcxMiAxMDA2NDQKLS0tIGEvbGlzcC9nbnVzL25ubWFp bGRpci5lbAorKysgYi9saXNwL2dudXMvbm5tYWlsZGlyLmVsCkBAIC0yOTYsNyArMjk2LDcg QEAgbm5tYWlsZGlyLS11bmxpbmsKICAgICAgKGlmIChmaWxlLWF0dHJpYnV0ZXMgZmlsZSkg KGRlbGV0ZS1maWxlIGZpbGUpKSkpCiAoZGVmdW4gbm5tYWlsZGlyLS1ta2RpciAoZGlyKQog ICAob3IgKGZpbGUtZXhpc3RzLXAgKGZpbGUtbmFtZS1hcy1kaXJlY3RvcnkgZGlyKSkKLSAg ICAgIChtYWtlLWRpcmVjdG9yeS1pbnRlcm5hbCAoZGlyZWN0b3J5LWZpbGUtbmFtZSBkaXIp KSkpCisgICAgICAobWFrZS1kaXJlY3RvcnkgKGRpcmVjdG9yeS1maWxlLW5hbWUgZGlyKSkp KQogKGRlZnVuIG5ubWFpbGRpci0tbWtmaWxlIChmaWxlKQogICAod3JpdGUtcmVnaW9uICIi IG5pbCBmaWxlIG5pbCAnbm8tbWVzc2FnZSkpCiAoZGVmdW4gbm5tYWlsZGlyLS1kZWxldGUt ZGlyLWZpbGVzIChkaXIgbHMpCmRpZmYgLS1naXQgYS9saXNwL2lkby5lbCBiL2xpc3AvaWRv LmVsCmluZGV4IDc3ZTRkZDQ0N2Q4Li45MmI0MzcwY2I0NSAxMDA2NDQKLS0tIGEvbGlzcC9p ZG8uZWwKKysrIGIvbGlzcC9pZG8uZWwKQEAgLTI0MzUsNyArMjQzNSw3IEBAIGlkby1maWxl LWludGVybmFsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lKSkK IAkgICAgICAoaWRvLXJlY29yZC1jb21tYW5kIG1ldGhvZCBkaXJuYW1lKQogCSAgICAgIChp ZG8tcmVjb3JkLXdvcmstZGlyZWN0b3J5IGRpcm5hbWUpCi0JICAgICAgKG1ha2UtZGlyZWN0 b3J5LWludGVybmFsIGRpcm5hbWUpCisJICAgICAgKG1ha2UtZGlyZWN0b3J5IGRpcm5hbWUp CiAJICAgICAgKGZ1bmNhbGwgbWV0aG9kIGRpcm5hbWUpKQogCSAgICAgKHQKIAkgICAgICA7 OyBwdXQgbWFrZS1kaXJlY3RvcnkgY29tbWFuZCBvbiBoaXN0b3J5CmRpZmYgLS1naXQgYS9s aXNwL25ldC90cmFtcC1zbWIuZWwgYi9saXNwL25ldC90cmFtcC1zbWIuZWwKaW5kZXggYzcy MGIzM2I1ZjIuLjI0ZmZmOWJiNDk1IDEwMDY0NAotLS0gYS9saXNwL25ldC90cmFtcC1zbWIu ZWwKKysrIGIvbGlzcC9uZXQvdHJhbXAtc21iLmVsCkBAIC0xMTg2LDEyICsxMTg2LDEzIEBA IHRyYW1wLXNtYi1oYW5kbGUtbWFrZS1kaXJlY3RvcnkKIAkobWFrZS1kaXJlY3RvcnkgbGRp ciBwYXJlbnRzKSkKICAgICAgIDs7IEp1c3QgZG8gaXQuCiAgICAgICAod2hlbiAoZmlsZS1k aXJlY3RvcnktcCBsZGlyKQotCShtYWtlLWRpcmVjdG9yeS1pbnRlcm5hbCBkaXIpKQorCSht YWtlLWRpcmVjdG9yeSBkaXIpKQogICAgICAgKHVubGVzcyAoZmlsZS1kaXJlY3RvcnktcCBk aXIpCiAJKHRyYW1wLWVycm9yIHYgJ2ZpbGUtZXJyb3IgIkNvdWxkbid0IG1ha2UgZGlyZWN0 b3J5ICVzIiBkaXIpKSkpKQogCiAoZGVmdW4gdHJhbXAtc21iLWhhbmRsZS1tYWtlLWRpcmVj dG9yeS1pbnRlcm5hbCAoZGlyZWN0b3J5KQogICAiTGlrZSBgbWFrZS1kaXJlY3RvcnktaW50 ZXJuYWwnIGZvciBUcmFtcCBmaWxlcy4iCisgIChkZWNsYXJlIChvYnNvbGV0ZSBuaWwgIjI5 LjEiKSkKICAgKHNldHEgZGlyZWN0b3J5IChkaXJlY3RvcnktZmlsZS1uYW1lIChleHBhbmQt ZmlsZS1uYW1lIGRpcmVjdG9yeSkpKQogICAodW5sZXNzIChmaWxlLW5hbWUtYWJzb2x1dGUt cCBkaXJlY3RvcnkpCiAgICAgKHNldHEgZGlyZWN0b3J5IChleHBhbmQtZmlsZS1uYW1lIGRp cmVjdG9yeSBkZWZhdWx0LWRpcmVjdG9yeSkpKQpkaWZmIC0tZ2l0IGEvc3JjL2ZpbGVpby5j IGIvc3JjL2ZpbGVpby5jCmluZGV4IDkyMzM1YjYzOWNkLi44MzVjNDJjYzBhNCAxMDA2NDQK LS0tIGEvc3JjL2ZpbGVpby5jCisrKyBiL3NyYy9maWxlaW8uYwpAQCAtMjQyNywxNiArMjQy NywxMSBAQCBERUZVTiAoIm1ha2UtZGlyZWN0b3J5LWludGVybmFsIiwgRm1ha2VfZGlyZWN0 b3J5X2ludGVybmFsLAogICAoTGlzcF9PYmplY3QgZGlyZWN0b3J5KQogewogICBjb25zdCBj aGFyICpkaXI7Ci0gIExpc3BfT2JqZWN0IGhhbmRsZXI7CiAgIExpc3BfT2JqZWN0IGVuY29k ZWRfZGlyOwogCiAgIENIRUNLX1NUUklORyAoZGlyZWN0b3J5KTsKICAgZGlyZWN0b3J5ID0g RmV4cGFuZF9maWxlX25hbWUgKGRpcmVjdG9yeSwgUW5pbCk7CiAKLSAgaGFuZGxlciA9IEZm aW5kX2ZpbGVfbmFtZV9oYW5kbGVyIChkaXJlY3RvcnksIFFtYWtlX2RpcmVjdG9yeV9pbnRl cm5hbCk7Ci0gIGlmICghTklMUCAoaGFuZGxlcikpCi0gICAgcmV0dXJuIGNhbGwyIChoYW5k bGVyLCBRbWFrZV9kaXJlY3RvcnlfaW50ZXJuYWwsIGRpcmVjdG9yeSk7Ci0KICAgZW5jb2Rl ZF9kaXIgPSBFTkNPREVfRklMRSAoZGlyZWN0b3J5KTsKIAogICBkaXIgPSBTU0RBVEEgKGVu Y29kZWRfZGlyKTsKZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9maWxlcy10ZXN0cy5lbCBiL3Rl c3QvbGlzcC9maWxlcy10ZXN0cy5lbAppbmRleCA2ODJiNWNkYjQ0OS4uZWZhZmI1NTgzYWMg MTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9maWxlcy10ZXN0cy5lbAorKysgYi90ZXN0L2xpc3Av ZmlsZXMtdGVzdHMuZWwKQEAgLTEwMzgsMTcgKzEwMzgsNiBAQCBmaWxlcy10ZXN0cy1maWxl LW5hbWUtbm9uLXNwZWNpYWwtbWFrZS1kaXJlY3RvcnkKICAgICAobGV0ICgoZGVmYXVsdC1k aXJlY3Rvcnkgbm9zcGVjaWFsLWRpcikpCiAgICAgICAoc2hvdWxkLWVycm9yIChtYWtlLWRp cmVjdG9yeSAiZGlyIikpKSkpCiAKLShlcnQtZGVmdGVzdCBmaWxlcy10ZXN0cy1maWxlLW5h bWUtbm9uLXNwZWNpYWwtbWFrZS1kaXJlY3RvcnktaW50ZXJuYWwgKCkKLSAgKGZpbGVzLXRl c3RzLS13aXRoLXRlbXAtbm9uLXNwZWNpYWwgKHRtcGRpciBub3NwZWNpYWwtZGlyIHQpCi0g ICAgKGxldCAoKGRlZmF1bHQtZGlyZWN0b3J5IG5vc3BlY2lhbC1kaXIpKQotICAgICAgKG1h a2UtZGlyZWN0b3J5LWludGVybmFsICJkaXIiKQotICAgICAgKHNob3VsZCAoZmlsZS1kaXJl Y3RvcnktcCAiZGlyIikpCi0gICAgICAoZGVsZXRlLWRpcmVjdG9yeSAiZGlyIikpKQotICAo ZmlsZXMtdGVzdHMtLXdpdGgtdGVtcC1ub24tc3BlY2lhbC1hbmQtZmlsZS1uYW1lLWhhbmRs ZXIKLSAgICAgICh0bXBkaXIgbm9zcGVjaWFsLWRpciB0KQotICAgIChsZXQgKChkZWZhdWx0 LWRpcmVjdG9yeSBub3NwZWNpYWwtZGlyKSkKLSAgICAgIChzaG91bGQtZXJyb3IgKG1ha2Ut ZGlyZWN0b3J5LWludGVybmFsICJkaXIiKSkpKSkKLQogKGVydC1kZWZ0ZXN0IGZpbGVzLXRl c3RzLWZpbGUtbmFtZS1ub24tc3BlY2lhbC1tYWtlLW5lYXJieS10ZW1wLWZpbGUgKCkKICAg KGxldCogKChkZWZhdWx0LWRpcmVjdG9yeSAoZmlsZS1uYW1lLXF1b3RlIHRlbXBvcmFyeS1m aWxlLWRpcmVjdG9yeSkpCiAgICAgICAgICAobmVhci10bXBmaWxlIChtYWtlLW5lYXJieS10 ZW1wLWZpbGUgImZpbGUiKSkpCi0tIAoyLjM4LjEKCg== --------------spzSoMnx7XEjSmlqZ7ykeHer Content-Type: text/x-patch; charset=UTF-8; name="0002-make-directory-now-returns-t-if-dir-already-exists.patch" Content-Disposition: attachment; filename*0="0002-make-directory-now-returns-t-if-dir-already-exists.patc"; filename*1="h" Content-Transfer-Encoding: base64 RnJvbSBiNjcxZTE3NTM3MjgyNWMwNzdhYjRhMTgxMGUzNTM4NDU2MjZjMjZhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBGcmksIDE2IERlYyAyMDIyIDE0OjU1OjQ4IC0wODAwClN1YmplY3Q6IFtQQVRD SCAyLzNdIG1ha2UtZGlyZWN0b3J5IG5vdyByZXR1cm5zIHQgaWYgZGlyIGFscmVhZHkgZXhp c3RzCgpUaGlzIG5ldyBmZWF0dXJlIHdpbGwgaGVscCBmaXggYSBjb3B5LWRpcmVjdG9yeSBi dWcgKEJ1ZyM1ODkxOSkuCkl0cyBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCByZWx5IG9uIG1h a2UtZGlyZWN0b3J5IGhhbmRsZXJzCnN1cHBvcnRpbmcgdGhlIG5ldyBmZWF0dXJlLCBhcyBp dCBubyBsb25nZXIgdXNlcyBhIG1ha2UtZGlyZWN0b3J5CmhhbmRsZXIgSCBpbiBhbnkgd2F5 IG90aGVyIHRoYW4gKGZ1bmNhbGwgSCBESVIpLCB0aHVzIHVzaW5nCm9ubHkgdGhlIGludGVy c2VjdGlvbiBvZiB0aGUgb2xkIGFuZCBuZXcgYmVoYXZpb3IgZm9yIGhhbmRsZXJzLgpUaGlz IHdpbGwgZ2l2ZSB1cyB0aW1lIHRvIGZpeCBoYW5kbGVycyBhdCBvdXIgbGVpc3VyZS4KKiBs aXNwL2ZpbGVzLmVsIChmaWxlcy0tZW5zdXJlLWRpcmVjdG9yeSk6IE5ldyBhcmcgTUtESVIu CkFsbCB1c2VzIGNoYW5nZWQuCihmaWxlcy0tZW5zdXJlLWRpcmVjdG9yeSwgbWFrZS1kaXJl Y3RvcnkpOgpSZXR1cm4gbm9uLW5pbCBpZiBESVIgaXMgYWxyZWFkeSBhIGRpcmVjdG9yeS4g IEFsbCB1c2VzIGNoYW5nZWQuCiogdGVzdC9saXNwL2ZpbGVzLXRlc3RzLmVsIChmaWxlcy10 ZXN0cy1tYWtlLWRpcmVjdG9yeSk6ClRlc3QgbmV3IHJldHVybi12YWx1ZSBjb252ZW50aW9u LgotLS0KIGRvYy9saXNwcmVmL2ZpbGVzLnRleGkgICB8ICAzICsrKwogZXRjL05FV1MgICAg ICAgICAgICAgICAgIHwgIDUgKysrKwogbGlzcC9maWxlcy5lbCAgICAgICAgICAgIHwgNTgg KysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQogdGVzdC9saXNwL2Zp bGVzLXRlc3RzLmVsIHwgIDYgKystLS0KIDQgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9u cygrKSwgMzEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL2xpc3ByZWYvZmlsZXMu dGV4aSBiL2RvYy9saXNwcmVmL2ZpbGVzLnRleGkKaW5kZXggNWJjYmFjNmNlYjguLjI5ZDll NTE0YzcyIDEwMDY0NAotLS0gYS9kb2MvbGlzcHJlZi9maWxlcy50ZXhpCisrKyBiL2RvYy9s aXNwcmVmL2ZpbGVzLnRleGkKQEAgLTMyMDUsNiArMzIwNSw5IEBAIENyZWF0ZS9EZWxldGUg RGlycwogQHZhcntwYXJlbnRzfSBpcyBub24tQGNvZGV7bmlsfSwgYXMgaXMgYWx3YXlzIHRo ZSBjYXNlIGluIGFuCiBpbnRlcmFjdGl2ZSBjYWxsLCB0aGF0IG1lYW5zIHRvIGNyZWF0ZSB0 aGUgcGFyZW50IGRpcmVjdG9yaWVzIGZpcnN0LAogaWYgdGhleSBkb24ndCBhbHJlYWR5IGV4 aXN0LgorQXMgYSBmdW5jdGlvbiwgQGNvZGV7bWFrZS1kaXJlY3Rvcnl9IHJldHVybnMgbm9u LUBjb2Rle25pbH0gaWYgQHZhcntkaXJuYW1lfQorYWxyZWFkeSBleGlzdHMgYXMgYSBkaXJl Y3RvcnkgYW5kIEB2YXJ7cGFyZW50c30gaXMgbm9uLUBjb2Rle25pbH0sCithbmQgcmV0dXJu cyBAY29kZXtuaWx9IGlmIGl0IHN1Y2Nlc3NmdWxseSBjcmVhdGVkIEB2YXJ7ZGlybmFtZX0u CiBAY29kZXtta2Rpcn0gaXMgYW4gYWxpYXMgZm9yIHRoaXMuCiBAZW5kIGRlZmZuCiAKZGlm ZiAtLWdpdCBhL2V0Yy9ORVdTIGIvZXRjL05FV1MKaW5kZXggZGJmMTY0MjIwNmIuLmQ1OWQ2 MWE5ZDI1IDEwMDY0NAotLS0gYS9ldGMvTkVXUworKysgYi9ldGMvTkVXUwpAQCAtNDQ4MSw2 ICs0NDgxLDExIEBAIGFuZCBjYW5ub3Qgd29yayB3aXRoIHJlZ3VsYXIgc3R5bGVzIHN1Y2gg YXMgJ2Jhc2ljJyBvciAnZmxleCcuCiAqKiBNYWdpYyBmaWxlIGhhbmRsZXJzIGZvciBtYWtl LWRpcmVjdG9yeS1pbnRlcm5hbCBhcmUgbm8gbG9uZ2VyIG5lZWRlZC4KIEluc3RlYWQsIEVt YWNzIHVzZXMgdGhlIGFscmVhZHktZXhpc3RpbmcgbWFrZS1kaXJlY3RvcnkgaGFuZGxlcnMu CiAKKysrKworKiogKG1ha2UtZGlyZWN0b3J5IERJUiB0KSByZXR1cm5zIG5vbi1uaWwgaWYg RElSIGFscmVhZHkgZXhpc3RzLgorVGhpcyBjYW4gbGV0IGEgY2FsbGVyIGtub3cgd2hldGhl ciBpdCBjcmVhdGVkIERJUi4gIEZvcm1lcmx5LAorbWFrZS1kaXJlY3RvcnkncyByZXR1cm4g dmFsdWUgd2FzIHVuc3BlY2lmaWVkLgorCiAMCiAqIENoYW5nZXMgaW4gRW1hY3MgMjkuMSBv biBOb24tRnJlZSBPcGVyYXRpbmcgU3lzdGVtcwogCmRpZmYgLS1naXQgYS9saXNwL2ZpbGVz LmVsIGIvbGlzcC9maWxlcy5lbAppbmRleCBjNzRlN2U4MDhlNC4uMjM1ZWFjZWU3MDQgMTAw NjQ0Ci0tLSBhL2xpc3AvZmlsZXMuZWwKKysrIGIvbGlzcC9maWxlcy5lbApAQCAtNjE5Mywx OCArNjE5MywxNyBAQCByZW5hbWUtdW5pcXVlbHkKICAgICAgIChyZW5hbWUtYnVmZmVyIChn ZW5lcmF0ZS1uZXctYnVmZmVyLW5hbWUgYmFzZS1uYW1lKSkKICAgICAgIChmb3JjZS1tb2Rl LWxpbmUtdXBkYXRlKSkpKQogCi0oZGVmdW4gZmlsZXMtLWVuc3VyZS1kaXJlY3RvcnkgKGRp cikKLSAgIk1ha2UgZGlyZWN0b3J5IERJUiBpZiBpdCBpcyBub3QgYWxyZWFkeSBhIGRpcmVj dG9yeS4gIFJldHVybiBuaWwuIgorKGRlZnVuIGZpbGVzLS1lbnN1cmUtZGlyZWN0b3J5ICht a2RpciBkaXIpCisgICJVc2UgZnVuY3Rpb24gTUtESVIgdG8gbWFrZSBkaXJlY3RvcnkgRElS IGlmIGl0IGlzIG5vdCBhbHJlYWR5IGEgZGlyZWN0b3J5LgorUmV0dXJuIG5vbi1uaWwgaWYg RElSIGlzIGFscmVhZHkgYSBkaXJlY3RvcnkuIgogICAoY29uZGl0aW9uLWNhc2UgZXJyCi0g ICAgICAobWFrZS1kaXJlY3RvcnktaW50ZXJuYWwgZGlyKQorICAgICAgKGZ1bmNhbGwgbWtk aXIgZGlyKQogICAgIChlcnJvcgotICAgICAodW5sZXNzIChmaWxlLWRpcmVjdG9yeS1wIGRp cikKLSAgICAgICAoc2lnbmFsIChjYXIgZXJyKSAoY2RyIGVycikpKSkpKQorICAgICAob3Ig KGZpbGUtZGlyZWN0b3J5LXAgZGlyKQorCSAoc2lnbmFsIChjYXIgZXJyKSAoY2RyIGVycikp KSkpKQogCiAoZGVmdW4gbWFrZS1kaXJlY3RvcnkgKGRpciAmb3B0aW9uYWwgcGFyZW50cykK ICAgIkNyZWF0ZSB0aGUgZGlyZWN0b3J5IERJUiBhbmQgb3B0aW9uYWxseSBhbnkgbm9uZXhp c3RlbnQgcGFyZW50IGRpcnMuCi1JZiBESVIgYWxyZWFkeSBleGlzdHMgYXMgYSBkaXJlY3Rv cnksIHNpZ25hbCBhbiBlcnJvciwgdW5sZXNzCi1QQVJFTlRTIGlzIG5vbi1uaWwuCiAKIElu dGVyYWN0aXZlbHksIHRoZSBkZWZhdWx0IGNob2ljZSBvZiBkaXJlY3RvcnkgdG8gY3JlYXRl IGlzIHRoZQogY3VycmVudCBidWZmZXIncyBkZWZhdWx0IGRpcmVjdG9yeS4gIFRoYXQgaXMg dXNlZnVsIHdoZW4geW91IGhhdmUKQEAgLTYyMTQsOCArNjIxMyw5IEBAIG1ha2UtZGlyZWN0 b3J5CiBub24tbmlsLCBzYXlzIHdoZXRoZXIgdG8gY3JlYXRlIHBhcmVudCBkaXJlY3Rvcmll cyB0aGF0IGRvbid0CiBleGlzdC4gIEludGVyYWN0aXZlbHksIHRoaXMgaGFwcGVucyBieSBk ZWZhdWx0LgogCi1JZiBjcmVhdGluZyB0aGUgZGlyZWN0b3J5IG9yIGRpcmVjdG9yaWVzIGZh aWwsIGFuIGVycm9yIHdpbGwgYmUKLXJhaXNlZC4iCitSZXR1cm4gbm9uLW5pbCBpZiBQQVJF TlRTIGlzIG5vbi1uaWwgYW5kIERJUiBhbHJlYWR5IGV4aXN0cyBhcyBhCitkaXJlY3Rvcnks IGFuZCBuaWwgaWYgRElSIGRpZCBub3QgYWxyZWFkeSBleGlzdCBidXQgd2FzIGNyZWF0ZWQu CitTaWduYWwgYW4gZXJyb3IgaWYgdW5zdWNjZXNzZnVsLiIKICAgKGludGVyYWN0aXZlCiAg ICAobGlzdCAocmVhZC1maWxlLW5hbWUgIk1ha2UgZGlyZWN0b3J5OiAiIGRlZmF1bHQtZGly ZWN0b3J5IGRlZmF1bHQtZGlyZWN0b3J5CiAJCQkgbmlsIG5pbCkKQEAgLTYyMjMsMjUgKzYy MjMsMjcgQEAgbWFrZS1kaXJlY3RvcnkKICAgOzsgSWYgZGVmYXVsdC1kaXJlY3RvcnkgaXMg YSByZW1vdGUgZGlyZWN0b3J5LAogICA7OyBtYWtlIHN1cmUgd2UgZmluZCBpdHMgbWFrZS1k aXJlY3RvcnkgaGFuZGxlci4KICAgKHNldHEgZGlyIChleHBhbmQtZmlsZS1uYW1lIGRpcikp Ci0gIChsZXQgKChoYW5kbGVyIChmaW5kLWZpbGUtbmFtZS1oYW5kbGVyIGRpciAnbWFrZS1k aXJlY3RvcnkpKSkKLSAgICAoaWYgaGFuZGxlcgotCShmdW5jYWxsIGhhbmRsZXIgJ21ha2Ut ZGlyZWN0b3J5IGRpciBwYXJlbnRzKQotICAgICAgKGlmIChub3QgcGFyZW50cykKLQkgICht YWtlLWRpcmVjdG9yeS1pbnRlcm5hbCBkaXIpCi0JKGxldCAoKGRpciAoZGlyZWN0b3J5LWZp bGUtbmFtZSAoZXhwYW5kLWZpbGUtbmFtZSBkaXIpKSkKLQkgICAgICBjcmVhdGUtbGlzdCBw YXJlbnQpCi0JICAod2hpbGUgKHByb2duCi0JCSAgIChzZXRxIHBhcmVudCAoZGlyZWN0b3J5 LWZpbGUtbmFtZQotCQkJCSAoZmlsZS1uYW1lLWRpcmVjdG9yeSBkaXIpKSkKLQkJICAgKGNv bmRpdGlvbi1jYXNlICgpCi0JCSAgICAgICAoZmlsZXMtLWVuc3VyZS1kaXJlY3RvcnkgZGly KQotCQkgICAgIChmaWxlLW1pc3NpbmcKLQkJICAgICAgOzsgRG8gbm90IGxvb3AgaWYgcm9v dCBkb2VzIG5vdCBleGlzdCAoQnVnIzIzMDkpLgotCQkgICAgICAobm90IChzdHJpbmc9IGRp ciBwYXJlbnQpKSkpKQotCSAgICAoc2V0cSBjcmVhdGUtbGlzdCAoY29ucyBkaXIgY3JlYXRl LWxpc3QpCi0JCSAgZGlyIHBhcmVudCkpCi0JICAoZG9saXN0IChkaXIgY3JlYXRlLWxpc3Qp Ci0gICAgICAgICAgICAoZmlsZXMtLWVuc3VyZS1kaXJlY3RvcnkgZGlyKSkpKSkpKQorICAo bGV0ICgobWtkaXIgKGlmLWxldCAoKGhhbmRsZXIgKGZpbmQtZmlsZS1uYW1lLWhhbmRsZXIg ZGlyICdtYWtlLWRpcmVjdG9yeSkpKQorICAgICAgICAgICAgICAgICAgICMnKGxhbWJkYSAo ZGlyKSAoZnVuY2FsbCBoYW5kbGVyICdtYWtlLWRpcmVjdG9yeSBkaXIpKQorICAgICAgICAg ICAgICAgICAjJ21ha2UtZGlyZWN0b3J5LWludGVybmFsKSkpCisgICAgKGlmIChub3QgcGFy ZW50cykKKyAgICAgICAgKGZ1bmNhbGwgbWtkaXIgZGlyKQorICAgICAgKGxldCAoKGRpciAo ZGlyZWN0b3J5LWZpbGUtbmFtZSAoZXhwYW5kLWZpbGUtbmFtZSBkaXIpKSkKKyAgICAgICAg ICAgIGFscmVhZHktZGlyIGNyZWF0ZS1saXN0IHBhcmVudCkKKyAgICAgICAgKHdoaWxlIChw cm9nbgorICAgICAgICAgICAgICAgICAoc2V0cSBwYXJlbnQgKGRpcmVjdG9yeS1maWxlLW5h bWUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZS1uYW1lLWRpcmVjdG9y eSBkaXIpKSkKKyAgICAgICAgICAgICAgICAgKGNvbmRpdGlvbi1jYXNlICgpCisgICAgICAg ICAgICAgICAgICAgICAoaWdub3JlIChzZXRxIGFscmVhZHktZGlyCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChmaWxlcy0tZW5zdXJlLWRpcmVjdG9yeSBta2RpciBk aXIpKSkKKyAgICAgICAgICAgICAgICAgICAoZXJyb3IKKyAgICAgICAgICAgICAgICAgICAg OzsgRG8gbm90IGxvb3AgaWYgcm9vdCBkb2VzIG5vdCBleGlzdCAoQnVnIzIzMDkpLgorICAg ICAgICAgICAgICAgICAgICAobm90IChzdHJpbmc9IGRpciBwYXJlbnQpKSkpKQorICAgICAg ICAgIChzZXRxIGNyZWF0ZS1saXN0IChjb25zIGRpciBjcmVhdGUtbGlzdCkKKyAgICAgICAg ICAgICAgICBkaXIgcGFyZW50KSkKKyAgICAgICAgKGRvbGlzdCAoZGlyIGNyZWF0ZS1saXN0 KQorICAgICAgICAgIChzZXRxIGFscmVhZHktZGlyIChmaWxlcy0tZW5zdXJlLWRpcmVjdG9y eSBta2RpciBkaXIpKSkKKyAgICAgICAgYWxyZWFkeS1kaXIpKSkpCiAKIChkZWZ1biBtYWtl LWVtcHR5LWZpbGUgKGZpbGVuYW1lICZvcHRpb25hbCBwYXJlbnRzKQogICAiQ3JlYXRlIGFu IGVtcHR5IGZpbGUgRklMRU5BTUUuCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZmlsZXMtdGVz dHMuZWwgYi90ZXN0L2xpc3AvZmlsZXMtdGVzdHMuZWwKaW5kZXggZWZhZmI1NTgzYWMuLmI5 ZmJlYjhhNGUwIDEwMDY0NAotLS0gYS90ZXN0L2xpc3AvZmlsZXMtdGVzdHMuZWwKKysrIGIv dGVzdC9saXNwL2ZpbGVzLXRlc3RzLmVsCkBAIC0xMjYxLDExICsxMjYxLDExIEBAIGZpbGVz LXRlc3RzLW1ha2UtZGlyZWN0b3J5CiAgICAgICAgICAgIChhL2IgKGNvbmNhdCBkaXJuYW1l ICJhL2IiKSkpCiAgICAgICAod3JpdGUtcmVnaW9uICIiIG5pbCBmaWxlKQogICAgICAgKHNo b3VsZC1lcnJvciAobWFrZS1kaXJlY3RvcnkgIi8iKSkKLSAgICAgIChzaG91bGQtbm90ICht YWtlLWRpcmVjdG9yeSAiLyIgdCkpCisgICAgICAoc2hvdWxkIChtYWtlLWRpcmVjdG9yeSAi LyIgdCkpCiAgICAgICAoc2hvdWxkLWVycm9yIChtYWtlLWRpcmVjdG9yeSBkaXIpKQotICAg ICAgKHNob3VsZC1ub3QgKG1ha2UtZGlyZWN0b3J5IGRpciB0KSkKKyAgICAgIChzaG91bGQg KG1ha2UtZGlyZWN0b3J5IGRpciB0KSkKICAgICAgIChzaG91bGQtZXJyb3IgKG1ha2UtZGly ZWN0b3J5IGRpcm5hbWUpKQotICAgICAgKHNob3VsZC1ub3QgKG1ha2UtZGlyZWN0b3J5IGRp cm5hbWUgdCkpCisgICAgICAoc2hvdWxkIChtYWtlLWRpcmVjdG9yeSBkaXJuYW1lIHQpKQog ICAgICAgKHNob3VsZC1lcnJvciAobWFrZS1kaXJlY3RvcnkgZmlsZSkpCiAgICAgICAoc2hv dWxkLWVycm9yIChtYWtlLWRpcmVjdG9yeSBmaWxlIHQpKQogICAgICAgKHNob3VsZC1ub3Qg KG1ha2UtZGlyZWN0b3J5IHN1YmRpcjEpKQotLSAKMi4zOC4xCgo= --------------spzSoMnx7XEjSmlqZ7ykeHer Content-Type: text/x-patch; charset=UTF-8; name="0003-Fix-copy-directory-bug-when-dest-dir-exists.patch" Content-Disposition: attachment; filename="0003-Fix-copy-directory-bug-when-dest-dir-exists.patch" Content-Transfer-Encoding: base64 RnJvbSA1YjY0MzVlMWU1N2FlMGMyMGNlMzA3OGFjMWZlOTdhNzc1N2M0YmE3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QHBlbmd1aW4uY3Mu dWNsYS5lZHU+CkRhdGU6IEZyaSwgMTYgRGVjIDIwMjIgMTQ6NTU6NDggLTA4MDAKU3ViamVj dDogW1BBVENIIDMvM10gRml4IGNvcHktZGlyZWN0b3J5IGJ1ZyB3aGVuIGRlc3QgZGlyIGV4 aXN0cwpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJz ZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAoKKiBsaXNwL2ZpbGVz LmVsIChjb3B5LWRpcmVjdG9yeSk6IFNldCDigJhmb2xsb3figJkgZGVwZW5kaW5nIG9uCndo ZXRoZXIgd2UgbWFkZSB0aGUgZGlyZWN0b3J5LCBub3QgYmFzZWQgb24gYSBndWVzcyB0aGF0 IGlzCnNvbWV0aW1lcyB3cm9uZy4gIFdoZW4gTkVXTkFNRSBpcyBhIGRpcmVjdG9yeSBuYW1l IGFuZApDT1BZLUNPTlRFTlRTIGlzIG5pbCwgZG8gbm90IG9iamVjdCBtZXJlbHkgYmVjYXVz ZSB0aGUgYWRqdXN0ZWQKTkVXTkFNRSBpcyBhbHJlYWR5IGEgZGlyZWN0b3J5LiAgKEJ1ZyM1 ODkxOSkuCiogdGVzdC9saXNwL2ZpbGVzLXRlc3RzLmVsIChmaWxlcy10ZXN0cy1jb3B5LWRp cmVjdG9yeSk6ClRlc3QgZm9yIHRoZSBidWcuCi0tLQogbGlzcC9maWxlcy5lbCAgICAgICAg ICAgIHwgMTkgKysrKysrKysrKysrLS0tLS0tLQogdGVzdC9saXNwL2ZpbGVzLXRlc3RzLmVs IHwgIDkgKysrKysrKystCiAyIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDgg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9maWxlcy5lbCBiL2xpc3AvZmlsZXMu ZWwKaW5kZXggMjM1ZWFjZWU3MDQuLjNjZjc4MzNhZTAyIDEwMDY0NAotLS0gYS9saXNwL2Zp bGVzLmVsCisrKyBiL2xpc3AvZmlsZXMuZWwKQEAgLTY0MzcsNyArNjQzNyw3IEBAIGNvcHkt ZGlyZWN0b3J5CiAgIDs7IGNvcHktZGlyZWN0b3J5IGhhbmRsZXIuCiAgIChsZXQgKChoYW5k bGVyIChvciAoZmluZC1maWxlLW5hbWUtaGFuZGxlciBkaXJlY3RvcnkgJ2NvcHktZGlyZWN0 b3J5KQogCQkgICAgIChmaW5kLWZpbGUtbmFtZS1oYW5kbGVyIG5ld25hbWUgJ2NvcHktZGly ZWN0b3J5KSkpCi0JKGZvbGxvdyBwYXJlbnRzKSkKKwlmb2xsb3cpCiAgICAgKGlmIGhhbmRs ZXIKIAkoZnVuY2FsbCBoYW5kbGVyICdjb3B5LWRpcmVjdG9yeSBkaXJlY3RvcnkKICAgICAg ICAgICAgICAgICAgbmV3bmFtZSBrZWVwLXRpbWUgcGFyZW50cyBjb3B5LWNvbnRlbnRzKQpA QCAtNjQ1NywxOSArNjQ1NywyNCBAQCBjb3B5LWRpcmVjdG9yeQogCQkJCSAgICB0KQogCSAg ICAgIChtYWtlLXN5bWJvbGljLWxpbmsgdGFyZ2V0IG5ld25hbWUgdCkpKQogICAgICAgICA7 OyBFbHNlIHByb2NlZWQgdG8gY29weSBhcyBhIHJlZ3VsYXIgZGlyZWN0b3J5Ci0gICAgICAg IChjb25kICgobm90IChkaXJlY3RvcnktbmFtZS1wIG5ld25hbWUpKQorCTs7IGZpcnN0IGJ5 IGNyZWF0aW5nIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkgaWYgbmVlZGVkLAorCTs7IHBy ZXBhcmluZyB0byBmb2xsb3cgYW55IHN5bWxpbmsgdG8gYSBkaXJlY3Rvcnkgd2UgZGlkIG5v dCBjcmVhdGUuCisJKHNldHEgZm9sbG93CisJICAgIChpZiAobm90IChkaXJlY3RvcnktbmFt ZS1wIG5ld25hbWUpKQogCSAgICAgICA7OyBJZiBORVdOQU1FIGlzIG5vdCBhIGRpcmVjdG9y eSBuYW1lLCBjcmVhdGUgaXQ7CiAJICAgICAgIDs7IHRoYXQgaXMgd2hlcmUgd2Ugd2lsbCBj b3B5IHRoZSBmaWxlcyBvZiBESVJFQ1RPUlkuCi0JICAgICAgIChtYWtlLWRpcmVjdG9yeSBu ZXduYW1lIHBhcmVudHMpKQorCSAgICAgICAobWFrZS1kaXJlY3RvcnkgbmV3bmFtZSBwYXJl bnRzKQogCSAgICAgIDs7IE5FV05BTUUgaXMgYSBkaXJlY3RvcnkgbmFtZS4gIElmIENPUFkt Q09OVEVOVFMgaXMgbm9uLW5pbCwKIAkgICAgICA7OyBjcmVhdGUgTkVXTkFNRSBpZiBpdCBp cyBub3QgYWxyZWFkeSBhIGRpcmVjdG9yeTsKIAkgICAgICA7OyBvdGhlcndpc2UsIGNyZWF0 ZSBORVdOQU1FL1tESVJFQ1RPUlktQkFTRU5BTUVdLgotCSAgICAgICgoaWYgY29weS1jb250 ZW50cwotCQkgICAob3IgcGFyZW50cyAobm90IChmaWxlLWRpcmVjdG9yeS1wIG5ld25hbWUp KSkKKwkgICAgICAodW5sZXNzIGNvcHktY29udGVudHMKIAkgICAgICAgICAoc2V0cSBuZXdu YW1lIChjb25jYXQgbmV3bmFtZQogCQkJCSAgICAgICAoZmlsZS1uYW1lLW5vbmRpcmVjdG9y eSBkaXJlY3RvcnkpKSkpCi0JICAgICAgIChtYWtlLWRpcmVjdG9yeSAoZGlyZWN0b3J5LWZp bGUtbmFtZSBuZXduYW1lKSBwYXJlbnRzKSkKLQkgICAgICAodCAoc2V0cSBmb2xsb3cgdCkp KQorCSAgICAgIChjb25kaXRpb24tY2FzZSBlcnIKKwkJICAobWFrZS1kaXJlY3RvcnkgKGRp cmVjdG9yeS1maWxlLW5hbWUgbmV3bmFtZSkgcGFyZW50cykKKwkJKGVycm9yCisJCSAob3Ig KGZpbGUtZGlyZWN0b3J5LXAgbmV3bmFtZSkKKwkJICAgICAoc2lnbmFsIChjYXIgZXJyKSAo Y2RyIGVycikpKSkpKSkKIAogICAgICAgICA7OyBDb3B5IHJlY3Vyc2l2ZWx5LgogICAgICAg ICAoZG9saXN0IChmaWxlCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZmlsZXMtdGVzdHMuZWwg Yi90ZXN0L2xpc3AvZmlsZXMtdGVzdHMuZWwKaW5kZXggYjlmYmViOGE0ZTAuLjAxMWJmYTY3 Y2MyIDEwMDY0NAotLS0gYS90ZXN0L2xpc3AvZmlsZXMtdGVzdHMuZWwKKysrIGIvdGVzdC9s aXNwL2ZpbGVzLXRlc3RzLmVsCkBAIC0xMzQ2LDcgKzEzNDYsOSBAQCBmaWxlcy10ZXN0cy1j b3B5LWRpcmVjdG9yeQogICAgICAgICAgICAoZGVzdCAoY29uY2F0IGRpcm5hbWUgImRlc3Qv bmV3L2RpcmVjdG9yeS8iKSkKICAgICAgICAgICAgKGZpbGUgKGNvbmNhdCAoZmlsZS1uYW1l LWFzLWRpcmVjdG9yeSBzb3VyY2UpICJmaWxlIikpCiAgICAgICAgICAgIChzb3VyY2UyIChj b25jYXQgZGlybmFtZSAic291cmNlMiIpKQotICAgICAgICAgICAoZGVzdDIgKGNvbmNhdCBk aXJuYW1lICJkZXN0L25ldzIiKSkpCisgICAgICAgICAgIChkZXN0MiAoY29uY2F0IGRpcm5h bWUgImRlc3QvbmV3MiIpKQorICAgICAgICAgICAoc291cmNlMyAoY29uY2F0IGRpcm5hbWUg InNvdXJjZTMvZCIpKQorICAgICAgICAgICAoZGVzdDMgKGNvbmNhdCBkaXJuYW1lICJkZXN0 My9kIikpKQogICAgICAgKG1ha2UtZGlyZWN0b3J5IHNvdXJjZSkKICAgICAgICh3cml0ZS1y ZWdpb24gIiIgbmlsIGZpbGUpCiAgICAgICAoY29weS1kaXJlY3Rvcnkgc291cmNlIGRlc3Qg dCB0IHQpCkBAIC0xMzU0LDYgKzEzNTYsMTEgQEAgZmlsZXMtdGVzdHMtY29weS1kaXJlY3Rv cnkKICAgICAgIChtYWtlLWRpcmVjdG9yeSAoY29uY2F0IChmaWxlLW5hbWUtYXMtZGlyZWN0 b3J5IHNvdXJjZTIpICJhIikgdCkKICAgICAgIChjb3B5LWRpcmVjdG9yeSBzb3VyY2UyIGRl c3QyKQogICAgICAgKHNob3VsZCAoZmlsZS1kaXJlY3RvcnktcCAoY29uY2F0IChmaWxlLW5h bWUtYXMtZGlyZWN0b3J5IGRlc3QyKSAiYSIpKSkKKyAgICAgIChtYWtlLWRpcmVjdG9yeSBz b3VyY2UzIHQpCisgICAgICAod3JpdGUtcmVnaW9uICJ4XG4iIG5pbCAoY29uY2F0IChmaWxl LW5hbWUtYXMtZGlyZWN0b3J5IHNvdXJjZTMpICJmaWxlIikpCisgICAgICAobWFrZS1kaXJl Y3RvcnkgZGVzdDMgdCkKKyAgICAgICh3cml0ZS1yZWdpb24gInlcbiIgbmlsIChjb25jYXQg KGZpbGUtbmFtZS1hcy1kaXJlY3RvcnkgZGVzdDMpICJmaWxlIikpCisgICAgICAoY29weS1k aXJlY3Rvcnkgc291cmNlMyAoZmlsZS1uYW1lLWRpcmVjdG9yeSBkZXN0MykgdCkKICAgICAg IChkZWxldGUtZGlyZWN0b3J5IGRpciAncmVjdXJzaXZlKSkpKQogCiAoZXJ0LWRlZnRlc3Qg ZmlsZXMtdGVzdHMtYWJicmV2aWF0ZS1maWxlLW5hbWUtaG9tZWRpciAoKQotLSAKMi4zOC4x Cgo= --------------spzSoMnx7XEjSmlqZ7ykeHer--