delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/04/13/12:54:04

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Message-ID: <6910a60804130953m45fee4f1i81200abb65edd6fc@mail.gmail.com>
Date: Sun, 13 Apr 2008 18:53:21 +0200
From: "Reini Urban" <rurban AT x-ray DOT at>
To: pp <perl5-porters AT perl DOT org>
Subject: cygwin-1.7 utf8 path support (exp)
Cc: cygwin AT cygwin DOT com
MIME-Version: 1.0
X-Google-Sender-Auth: f490f9f27401367a
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

------=_Part_3890_29428570.1208105602371
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Attached patch is for interested developers which want to try out the
upcoming cygwin-1.7
for utf8 path conversion support. It uses now the wide char api with
MAX_PATH of 32KB length.
Do not apply yet.

The cygwin 1.7 gcc suite is not yet stable enough to finish perl
compilation for me
so I couldn't test it. Maybe someone else is more lucky.
-- 
Reini Urban
http://phpwiki.org/              http://murbreak.at/

------=_Part_3890_29428570.1208105602371
Content-Type: text/x-diff; name=cyg-1.7-paths-utf8.patch
Content-Transfer-Encoding: base64
X-Attachment-Id: f_fezup2d6
Content-Disposition: attachment; filename=cyg-1.7-paths-utf8.patch

ZGlmZiAtYnUgcGVybC1jdXJyZW50L2N5Z3dpbi9jeWd3aW4uYy5vcmlnIHBl
cmwtY3VycmVudC9jeWd3aW4vY3lnd2luLmMKLS0tIHBlcmwtY3VycmVudC9j
eWd3aW4vY3lnd2luLmMub3JpZwkyMDA3LTEyLTIyIDIyOjM4OjQ2LjAwMDAw
MDAwMCArMDEwMAorKysgcGVybC1jdXJyZW50L2N5Z3dpbi9jeWd3aW4uYwky
MDA4LTA0LTEzIDE0OjI0OjE2Ljg3NTAwMDAwMCArMDIwMApAQCAtMTAsOSAr
MTAsMTMgQEAKICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRlIDxwcm9j
ZXNzLmg+CiAjaW5jbHVkZSA8c3lzL2N5Z3dpbi5oPgorI2luY2x1ZGUgPGN5
Z3dpbi92ZXJzaW9uLmg+CiAjaW5jbHVkZSA8bW50ZW50Lmg+CiAjaW5jbHVk
ZSA8YWxsb2NhLmg+CiAjaW5jbHVkZSA8ZGxmY24uaD4KKyNpZiAoQ1lHV0lO
X1ZFUlNJT05fQVBJX01JTk9SID49IDE4MSkKKyNpbmNsdWRlIDx3Y2hhci5o
PgorI2VuZGlmCiAKIC8qCiAgKiBwcF9zeXN0ZW0oKSBpbXBsZW1lbnRlZCB2
aWEgc3Bhd24oKQpAQCAtMTkxLDcgKzE5NSwxMiBAQAogCiAgICAgcGlkID0g
KHBpZF90KVN2SVYoU1QoMCkpOwogCi0gICAgaWYgKChSRVRWQUwgPSBjeWd3
aW4zMl93aW5waWRfdG9fcGlkKHBpZCkpID4gMCkgeworI2lmIChDWUdXSU5f
VkVSU0lPTl9BUElfTUlOT1IgPj0gMTgxKQorICAgIFJFVFZBTCA9IGN5Z3dp
bl93aW5waWRfdG9fcGlkKHBpZCk7CisjZWxzZQorICAgIFJFVFZBTCA9IGN5
Z3dpbjMyX3dpbnBpZF90b19waWQocGlkKTsKKyNlbmRpZgorICAgIGlmIChS
RVRWQUwgPiAwKSB7CiAgICAgICAgIFhTcHJlUFVTSDsgUFVTSGkoKElWKVJF
VFZBTCk7CiAgICAgICAgIFhTUkVUVVJOKDEpOwogICAgIH0KQEAgLTIwNSw2
ICsyMTQsNyBAQAogICAgIFNUUkxFTiBsZW47CiAgICAgaW50IGVycjsKICAg
ICBjaGFyICpwYXRobmFtZSwgKmJ1ZjsKKyAgICBpbnQgaXN1dGY4ID0gMDsK
IAogICAgIGlmIChpdGVtcyA8IDEgfHwgaXRlbXMgPiAyKQogICAgICAgICBQ
ZXJsX2Nyb2FrKGFUSFhfICJVc2FnZTogQ3lnd2luOjp3aW5fdG9fcG9zaXhf
cGF0aChwYXRobmFtZSwgW2Fic29sdXRlXSkiKTsKQEAgLTIxNSwxNCArMjI1
LDU4IEBACiAKICAgICBpZiAoIWxlbikKIAlQZXJsX2Nyb2FrKGFUSFhfICJj
YW4ndCBjb252ZXJ0IGVtcHR5IHBhdGgiKTsKLSAgICBidWYgPSAoY2hhciAq
KSBzYWZlbWFsbG9jIChsZW4gKyAyNjAgKyAxMDAxKTsKKyAgICBpc3V0Zjgg
PSBTdlVURjgoU1QoMCkpOwogCisjaWYgKENZR1dJTl9WRVJTSU9OX0FQSV9N
SU5PUiA+PSAxODEpCisgICAgLyogQ2hlY2sgdXRmOCBmbGFnIGFuZCB1c2Ug
d2lkZSBhcGkgdGhlbi4KKyAgICAgICBTaXplIGNhbGN1bGF0aW9uOiBPbiBv
dmVyZmxvdyBsZXQgY3lnd2luX2NvbnZfcGF0aCBjYWxjdWxhdGUgdGhlIGZp
bmFsIHNpemUuCisgICAgICovCisgICAgaWYgKGlzdXRmOCkgeworCWludCB3
aGF0ID0gYWJzb2x1dGVfZmxhZyA/IENDUF9XSU5fV19UT19QT1NJWCA6IEND
UF9XSU5fV19UT19QT1NJWCB8IENDUF9SRUxBVElWRTsKKwlpbnQgd2xlbiA9
IHNpemVvZih3Y2hhcl90KSoobGVuICsgMjYwICsgMTAwMSk7CisJd2NoYXJf
dCAqd3BhdGggPSAod2NoYXJfdCAqKSBzYWZlbWFsbG9jKHNpemVvZih3Y2hh
cl90KSpsZW4pOworCXdjaGFyX3QgKndidWYgPSAod2NoYXJfdCAqKSBzYWZl
bWFsbG9jKHdsZW4pOworCXNldF9sb2NhbGUoTENfQ1RZUEUsICJ1dGY4Iik7
CisJaWYgKCFJTl9CWVRFUykgeworCSAgICBtYnN0YXRlX3QgbWJzOworCSAg
ICAvKiB1dGY4X3RvX3V2dW5pKHBhdGhuYW1lLCB3cGF0aCkgb3IgRW5jb2Rp
bmc6Ol91dGY4X3RvX2J5dGVzKHN2LCAiVUNTLTJCRSIpOyAqLworCSAgICB3
bGVuID0gbWJzcnRvd2NzKHdwYXRoLCAoY29uc3QgY2hhcioqKSZwYXRobmFt
ZSwgd2xlbiwgJm1icyk7CisJICAgIGlmICh3bGVuID4gMCkKKwkJZXJyID0g
Y3lnd2luX2NvbnZfcGF0aCh3aGF0LCB3cGF0aCwgd2J1Ziwgd2xlbik7CisJ
fSBlbHNlIHsgLyogdXNlIGJ5dGVzOyBhc3N1bWUgYWxyZWFkeSB1Y3MtMiBl
bmNvZGVkIGJ5dGVzdHJlYW0gKi8KKwkgICAgZXJyID0gY3lnd2luX2NvbnZf
cGF0aCh3aGF0LCBwYXRobmFtZSwgd2J1Ziwgd2xlbik7CisJfQorCWlmIChl
cnIgPT0gRU5PU1BDKSB7IC8qIG91ciBzcGFjZSBhc3N1bXB0aW9uIHdhcyB3
cm9uZywgbm90IGVub3VnaCBzcGFjZSAqLworCSAgICBpbnQgbmV3bGVuID0g
Y3lnd2luX2NvbnZfcGF0aCh3aGF0LCB3cGF0aCwgd2J1ZiwgMCk7CisJICAg
IHdidWYgPSAod2NoYXJfdCAqKSByZWFsbG9jKCZ3YnVmLCBuZXdsZW4pOwor
CSAgICBlcnIgPSBjeWd3aW5fY29udl9wYXRoKHdoYXQsIHdwYXRoLCB3YnVm
LCBuZXdsZW4pOworCSAgICB3bGVuID0gbmV3bGVuOworCX0KKwkvKiB1dnVu
aV90b191dGY4KGJ1ZiwgY2hyKSBvciBFbmNvZGluZzo6X2J5dGVzX3RvX3V0
Zjgoc3YsICJVQ1MtMkJFIik7ICovCisJd2xlbiA9IHdjc3J0b21icyhOVUxM
LCAoY29uc3Qgd2NoYXJfdCAqKikmd2J1Ziwgd2xlbiwgTlVMTCk7CisJYnVm
ID0gKGNoYXIgKikgc2FmZW1hbGxvYyh3bGVuKzEpOworCXdjc3J0b21icyhi
dWYsIChjb25zdCB3Y2hhcl90ICoqKSZ3YnVmLCB3bGVuLCBOVUxMKTsKKyAg
ICB9IGVsc2UgeworCWludCB3aGF0ID0gYWJzb2x1dGVfZmxhZyA/IENDUF9X
SU5fQV9UT19QT1NJWCA6IENDUF9XSU5fQV9UT19QT1NJWCB8IENDUF9SRUxB
VElWRTsKKwlidWYgPSAoY2hhciAqKSBzYWZlbWFsbG9jIChsZW4gKyAyNjAg
KyAxMDAxKTsKKwllcnIgPSBjeWd3aW5fY29udl9wYXRoKHdoYXQsIHBhdGhu
YW1lLCBidWYsIGxlbiArIDI2MCArIDEwMDEpOworCWlmIChlcnIgPT0gRU5P
U1BDKSB7IC8qIG91ciBzcGFjZSBhc3N1bXB0aW9uIHdhcyB3cm9uZywgbm90
IGVub3VnaCBzcGFjZSAqLworCSAgICBpbnQgbmV3bGVuID0gY3lnd2luX2Nv
bnZfcGF0aCh3aGF0LCBwYXRobmFtZSwgYnVmLCAwKTsKKwkgICAgYnVmID0g
KGNoYXIgKikgcmVhbGxvYygmYnVmLCBuZXdsZW4pOworCSAgICBlcnIgPSBj
eWd3aW5fY29udl9wYXRoKHdoYXQsIHBhdGhuYW1lLCBidWYsIG5ld2xlbik7
CisJfQorICAgIH0KKyNlbHNlCiAgICAgaWYgKGFic29sdXRlX2ZsYWcpCiAJ
ZXJyID0gY3lnd2luX2NvbnZfdG9fZnVsbF9wb3NpeF9wYXRoKHBhdGhuYW1l
LCBidWYpOwogICAgIGVsc2UKIAllcnIgPSBjeWd3aW5fY29udl90b19wb3Np
eF9wYXRoKHBhdGhuYW1lLCBidWYpOworI2VuZGlmCiAgICAgaWYgKCFlcnIp
IHsKIAlTVCgwKSA9IHN2XzJtb3J0YWwobmV3U1ZwdihidWYsIDApKTsKKwlp
ZiAoaXN1dGY4KSB7CisJICAgIFN2VVRGOF9vbihTVCgwKSk7CisJfQogCXNh
ZmVmcmVlKGJ1Zik7CiAgICAgICAgWFNSRVRVUk4oMSk7CiAgICAgfSBlbHNl
IHsKQEAgLTIzOCwyNCArMjkyLDcxIEBACiAgICAgU1RSTEVOIGxlbjsKICAg
ICBpbnQgZXJyOwogICAgIGNoYXIgKnBhdGhuYW1lLCAqYnVmOworICAgIGlu
dCBpc3V0ZjggPSAwOwogCiAgICAgaWYgKGl0ZW1zIDwgMSB8fCBpdGVtcyA+
IDIpCiAgICAgICAgIFBlcmxfY3JvYWsoYVRIWF8gIlVzYWdlOiBDeWd3aW46
OnBvc2l4X3RvX3dpbl9wYXRoKHBhdGhuYW1lLCBbYWJzb2x1dGVdKSIpOwog
Ci0gICAgcGF0aG5hbWUgPSBTdlBWKFNUKDApLCBsZW4pOworICAgIHBhdGhu
YW1lID0gU3ZQVngoU1QoMCksIGxlbik7CiAgICAgaWYgKGl0ZW1zID09IDIp
CiAJYWJzb2x1dGVfZmxhZyA9IFN2VFJVRShTVCgxKSk7CiAKICAgICBpZiAo
IWxlbikKIAlQZXJsX2Nyb2FrKGFUSFhfICJjYW4ndCBjb252ZXJ0IGVtcHR5
IHBhdGgiKTsKKyAgICBpc3V0ZjggPSBTdlVURjgoU1QoMCkpOworI2lmIChD
WUdXSU5fVkVSU0lPTl9BUElfTUlOT1IgPj0gMTgxKQorICAgIC8qIENoZWNr
IHV0ZjggZmxhZyBhbmQgdXNlIHdpZGUgYXBpIHRoZW4uCisgICAgICAgU2l6
ZSBjYWxjdWxhdGlvbjogT24gb3ZlcmZsb3cgbGV0IGN5Z3dpbl9jb252X3Bh
dGggY2FsY3VsYXRlIHRoZSBmaW5hbCBzaXplLgorICAgICAqLworICAgIGlm
IChpc3V0ZjgpIHsKKwlpbnQgd2hhdCA9IGFic29sdXRlX2ZsYWcgPyBDQ1Bf
UE9TSVhfVE9fV0lOX1cgOiBDQ1BfUE9TSVhfVE9fV0lOX1cgfCBDQ1BfUkVM
QVRJVkU7CisJaW50IHdsZW4gPSBzaXplb2Yod2NoYXJfdCkqKGxlbiArIDI2
MCArIDEwMDEpOworCXdjaGFyX3QgKndwYXRoID0gKHdjaGFyX3QgKikgc2Fm
ZW1hbGxvYyhzaXplb2Yod2NoYXJfdCkqbGVuKTsKKwl3Y2hhcl90ICp3YnVm
ID0gKHdjaGFyX3QgKikgc2FmZW1hbGxvYyh3bGVuKTsKKwlzZXRfbG9jYWxl
KExDX0NUWVBFLCAidXRmOCIpOworCWlmICghSU5fQllURVMpIHsKKwkgICAg
bWJzdGF0ZV90IG1iczsKKwkgICAgLyogdXRmOF90b191dnVuaShwYXRobmFt
ZSwgd3BhdGgpIG9yIEVuY29kaW5nOjpfdXRmOF90b19ieXRlcyhzdiwgIlVD
Uy0yQkUiKTsgKi8KKwkgICAgd2xlbiA9IG1ic3J0b3djcyh3cGF0aCwgKGNv
bnN0IGNoYXIqKikmcGF0aG5hbWUsIHdsZW4sICZtYnMpOworCSAgICBpZiAo
d2xlbiA+IDApCisJCWVyciA9IGN5Z3dpbl9jb252X3BhdGgod2hhdCwgd3Bh
dGgsIHdidWYsIHdsZW4pOworCX0gZWxzZSB7IC8qIHVzZSBieXRlczsgYXNz
dW1lIGFscmVhZHkgdWNzLTIgZW5jb2RlZCBieXRlc3RyZWFtICovCisJICAg
IGVyciA9IGN5Z3dpbl9jb252X3BhdGgod2hhdCwgcGF0aG5hbWUsIHdidWYs
IHdsZW4pOworCX0KKwlpZiAoZXJyID09IEVOT1NQQykgeyAvKiBvdXIgc3Bh
Y2UgYXNzdW1wdGlvbiB3YXMgd3JvbmcsIG5vdCBlbm91Z2ggc3BhY2UgKi8K
KwkgICAgaW50IG5ld2xlbiA9IGN5Z3dpbl9jb252X3BhdGgod2hhdCwgd3Bh
dGgsIHdidWYsIDApOworCSAgICB3YnVmID0gKHdjaGFyX3QgKikgcmVhbGxv
Yygmd2J1ZiwgbmV3bGVuKTsKKwkgICAgZXJyID0gY3lnd2luX2NvbnZfcGF0
aCh3aGF0LCB3cGF0aCwgd2J1ZiwgbmV3bGVuKTsKKwkgICAgd2xlbiA9IG5l
d2xlbjsKKwl9CisJLyogdXZ1bmlfdG9fdXRmOChidWYsIGNocikgb3IgRW5j
b2Rpbmc6Ol9ieXRlc190b191dGY4KHN2LCAiVUNTLTJCRSIpOyAqLworCXds
ZW4gPSB3Y3NydG9tYnMoTlVMTCwgKGNvbnN0IHdjaGFyX3QgKiopJndidWYs
IHdsZW4sIE5VTEwpOworCWJ1ZiA9IChjaGFyICopIHNhZmVtYWxsb2Mod2xl
bisxKTsKKwl3Y3NydG9tYnMoYnVmLCAoY29uc3Qgd2NoYXJfdCAqKikmd2J1
Ziwgd2xlbiwgTlVMTCk7CisgICAgfSBlbHNlIHsKKwlpbnQgd2hhdCA9IGFi
c29sdXRlX2ZsYWcgPyBDQ1BfUE9TSVhfVE9fV0lOX0EgOiBDQ1BfUE9TSVhf
VE9fV0lOX0EgfCBDQ1BfUkVMQVRJVkU7CisJYnVmID0gKGNoYXIgKikgc2Fm
ZW1hbGxvYyhsZW4gKyAyNjAgKyAxMDAxKTsKKwllcnIgPSBjeWd3aW5fY29u
dl9wYXRoKHdoYXQsIHBhdGhuYW1lLCBidWYsIGxlbiArIDI2MCArIDEwMDEp
OworCWlmIChlcnIgPT0gRU5PU1BDKSB7IC8qIG91ciBzcGFjZSBhc3N1bXB0
aW9uIHdhcyB3cm9uZywgbm90IGVub3VnaCBzcGFjZSAqLworCSAgICBpbnQg
bmV3bGVuID0gY3lnd2luX2NvbnZfcGF0aCh3aGF0LCBwYXRobmFtZSwgYnVm
LCAwKTsKKwkgICAgYnVmID0gKGNoYXIgKikgcmVhbGxvYygmYnVmLCBuZXds
ZW4pOworCSAgICBlcnIgPSBjeWd3aW5fY29udl9wYXRoKHdoYXQsIHBhdGhu
YW1lLCBidWYsIG5ld2xlbik7CisJfQorICAgIH0KKyNlbHNlCisgICAgaWYg
KGlzdXRmOCkKKwlQZXJsX3dhcm4oYVRIWF8gImNhbid0IGNvbnZlcnQgdXRm
OCBwYXRoIik7CiAgICAgYnVmID0gKGNoYXIgKikgc2FmZW1hbGxvYyhsZW4g
KyAyNjAgKyAxMDAxKTsKLQogICAgIGlmIChhYnNvbHV0ZV9mbGFnKQogCWVy
ciA9IGN5Z3dpbl9jb252X3RvX2Z1bGxfd2luMzJfcGF0aChwYXRobmFtZSwg
YnVmKTsKICAgICBlbHNlCiAJZXJyID0gY3lnd2luX2NvbnZfdG9fd2luMzJf
cGF0aChwYXRobmFtZSwgYnVmKTsKKyNlbmRpZgogICAgIGlmICghZXJyKSB7
CiAJU1QoMCkgPSBzdl8ybW9ydGFsKG5ld1NWcHYoYnVmLCAwKSk7CisJaWYg
KGlzdXRmOCkgeworCSAgICBTdlVURjhfb24oU1QoMCkpOworCX0KIAlzYWZl
ZnJlZShidWYpOwogICAgICAgIFhTUkVUVVJOKDEpOwogICAgIH0gZWxzZSB7
Cg==


------=_Part_3890_29428570.1208105602371
Content-Type: text/plain; charset=us-ascii

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/
------=_Part_3890_29428570.1208105602371--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019