[ruby-dev:49018] [Ruby trunk - Feature #11216] inode for Windows

From: akr@...
Date: 2015-06-03 13:49:11 UTC
List: ruby-dev #49018
SXNzdWUgIzExMjE2IGhhcyBiZWVuIHVwZGF0ZWQgYnkgQWtpcmEgVGFuYWth
LgoKCldpbmRvd3Mg44GnIGlubyDjgpLkvb/jgYjjgovjgojjgYbjgavjgZnj
govjga7jgYzjgYTjgZHjgarjgYTjgajjgYTjgYbjgo/jgZHjgafjga/jgarj
gYTjga7jgafjgZnjgYzjgIEK44OV44Kh44Kk44Or44GM5ZCM5LiA44GL44Gp
44GG44GL56K644GL44KB44KL44Gu44Gr44Gv54++5Zyo44Gn44KCIHRlc3Qo
Ii0iLCBmMSwgZjIpIOOBjOS9v+OBiOOBquOBhOOBp+OBl+OCh+OBhuOBi+OA
ggoKYGBgCiUgcnVieSAtZSAnCkZpbGUud3JpdGUoInoiLCAiIikKZiA9IEZp
bGUub3BlbigieiIpCnAgdGVzdCgiLSIsIGYsICJ6IikKRmlsZS53cml0ZSgi
ei5uZXciLCAiIikKRmlsZS5yZW5hbWUoInoubmV3IiwgInoiKQpwIHRlc3Qo
Ii0iLCBmLCAieiIpCicKdHJ1ZQpmYWxzZQpgYGAKCi0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTEyMTY6IGlu
b2RlIGZvciBXaW5kb3dzCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lz
c3Vlcy8xMTIxNiNjaGFuZ2UtNTI3MjgKCiogQXV0aG9yOiBZdWkgTkFSVVNF
CiogU3RhdHVzOiBPcGVuCiogUHJpb3JpdHk6IE5vcm1hbAoqIEFzc2lnbmVl
OiAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQrn
j77lnKhXaW5kb3dz44Gn44GvRmlsZTo6U3RhdCNpbm9kZeOBr+W4uOOBqzDj
gpLov5TjgZfjgb7jgZnjgYzjgIEK5L6L44GI44Gw44GC44KLbG9ncm90YXRl
55qE44Gq6YGL55So44Gu6KGM44KP44KM44KL44OV44Kh44Kk44Or44KS55uj
6KaW44O76ZaL44GN44Gj44Gx44Gq44GX44Gr44GX44Gm44CB6L+96KiY44GV
44KM44KM44Gw5beu5YiG44KS6Kqt44G/44CBCnJvdGF0ZeOBleOCjOOBn+Wg
tOWQiOOBr+aknOWHuuOBl+OBpuacgOaWsOOBruODreOCsOOCkuiqreOCgOKA
puOBqOOBhOOBhuOCiOOBhuOBquWgtOWQiOOBq+OAgXJvdGF0ZeOCkuaknOWH
uuOBmeOCi+mam+OBq2lub2Rl44Gv5L2/44KP44KM44G+44GZ44CCCgpXaW5k
b3dz44Gr44GvR2V0RmlsZUluZm9ybWF0aW9uQnlIYW5kbGUoKeOBqOOBhOOB
hkFQSeOBp+W+l+OCieOCjOOCi0JZX0hBTkRMRV9GSUxFX0lORk9STUFUSU9O
5qeL6YCg5L2T44Gu44Oh44Oz44OQ44CBCm5GaWxlSW5kZXhIaWdoL0xvd+OB
i+OCiTY0Yml044Gu44OV44Kh44Kk44Or44K344K544OG44OgdW5pcXVl44Gq
SUTjgYzjgYLjgovjga7jgafjgIHjgZPjgozjgpJpbm9kZeOBqOOBl+OBpuS7
o+eUqOOBjOWPr+iDveOBp+OBmeOAggoK5ZWP6aGM44Gv44GT44KM44KSRmls
ZTo6U3RhdOOBq+OBhOOCjOOCi+OBq+OBr+OCguOBqOOBrnN0cnVjdCBzdGF0
Lmlub+OBjDE2Yml044Gn5bCP44GV44GZ44GO44KL54K544Gn44GZ44GM44CB
CuW5uOOBhHN0cnVjdCBzdGF0aTY044Gr44Gv44Ki44Op44Kk44Oh44Oz44OI
44Gu6YO95ZCI44Gn6ZqZ6ZaT44GM44GC44KL44Gf44KB44CB44Gd44GT44Gr
44Gk44Gj44GT44KA44GT44Go44Gr44GX44Gm44GE44G+44GZ44CCCu+8iGRl
duOBqHVkZXbjgYzluLjjgavlkIzjgZjjgajjgYvjgIF1aWTjgoRnaWTjgYzl
uLjjgasw44Gq44Gp54Sh5oSP5ZGz44Gq5YCk44Gv5LuW44Gr44KC44GC44KK
44G+44GZ44GM77yJCmh0dHBzOi8vbXNkbi5taWNyb3NvZnQuY29tL2phLWpw
L2xpYnJhcnkvbXMzNTAyNDElMjh2PXZzLjcxJTI5LmFzcHgKCmBgYApkaWZm
IC0tZ2l0IGEvZmlsZS5jIGIvZmlsZS5jCmluZGV4IGFjOTlkZTYuLjc2MWZm
MWYgMTAwNjQ0Ci0tLSBhL2ZpbGUuYworKysgYi9maWxlLmMKQEAgLTU0OCw3
ICs1NDgsMTggQEAgcmJfc3RhdF9kZXZfbWlub3IoVkFMVUUgc2VsZikKIHN0
YXRpYyBWQUxVRQogcmJfc3RhdF9pbm8oVkFMVUUgc2VsZikKIHsKLSNpZiBT
SVpFT0ZfU1RSVUNUX1NUQVRfU1RfSU5PID4gU0laRU9GX0xPTkcKKyNpZmRl
ZiBfV0lOMzIKKyAgICBzdHJ1Y3Qgc3RhdCAqc3QgPSBnZXRfc3RhdChzZWxm
KTsKKyAgICB1bnNpZ25lZCBzaG9ydCAqcDIgPSAodW5zaWduZWQgc2hvcnQg
KilzdDsKKyAgICB1bnNpZ25lZCBpbnQgKnA0ID0gKHVuc2lnbmVkIGludCAq
KXN0OworICAgIHVpbnQ2NF90IHI7CisgICAgciA9IHAyWzJdOworICAgIHIg
PDw9IDE2OworICAgIHIgfD0gcDJbN107CisgICAgciA8PD0gMzI7CisgICAg
ciB8PSBwNFs1XTsKKyAgICByZXR1cm4gVUxMMk5VTShyKTsKKyNlbGlmIFNJ
WkVPRl9TVFJVQ1RfU1RBVF9TVF9JTk8gPiBTSVpFT0ZfTE9ORwogICAgIHJl
dHVybiBVTEwyTlVNKGdldF9zdGF0KHNlbGYpLT5zdF9pbm8pOwogI2Vsc2UK
ICAgICByZXR1cm4gVUxPTkcyTlVNKGdldF9zdGF0KHNlbGYpLT5zdF9pbm8p
OwpkaWZmIC0tZ2l0IGEvd2luMzIvd2luMzIuYyBiL3dpbjMyL3dpbjMyLmMK
aW5kZXggYjIzZTlhZi4uZmNmYzBhNiAxMDA2NDQKLS0tIGEvd2luMzIvd2lu
MzIuYworKysgYi93aW4zMi93aW4zMi5jCkBAIC00OTc1LDYgKzQ5NzUsNDgg
QEAgc3RhdGljIHRpbWVfdCBmaWxldGltZV90b191bml4dGltZShjb25zdCBG
SUxFVElNRSAqZnQpOwogc3RhdGljIFdDSEFSICpuYW1lX2Zvcl9zdGF0KFdD
SEFSICpidWYsIGNvbnN0IFdDSEFSICpwYXRoKTsKIHN0YXRpYyBEV09SRCBz
dGF0aTY0X2hhbmRsZShIQU5ETEUgaCwgc3RydWN0IHN0YXRpNjQgKnN0KTsK
IAorLyogTGljZW5zZTogUnVieSdzICovCitzdGF0aWMgdm9pZAorc3RhdGk2
NF9zZXRfaW5vZGUoUEJZX0hBTkRMRV9GSUxFX0lORk9STUFUSU9OIHBpbmZv
LCBzdHJ1Y3Qgc3RhdGk2NCAqc3QpCit7CisgICAgLyogc3RydWN0IHN0YXRp
NjQgbGF5b3V0CisgICAgICoKKyAgICAgKiBkZXY6IDAtMworICAgICAqIGlu
bzogNC01CisgICAgICogbW9kZTogNi03CisgICAgICogbmxpbms6IDgtOQor
ICAgICAqIHVpZDogMTAtMTEKKyAgICAgKiBnaWQ6IDEyLTEzCisgICAgICog
XzogMTQtMTUKKyAgICAgKiByZGV2OiAxNi0xOQorICAgICAqIF86IDIwLTIz
CisgICAgICogc2l6ZTogMjQtMzEKKyAgICAgKiBhdGltZTogMzItMzkKKyAg
ICAgKiBtdGltZTogNDAtNDcKKyAgICAgKiBjdGltZTogNDgtNTUKKyAgICAg
KgorICAgICAqLworICAgIHVuc2lnbmVkIHNob3J0ICpwMiA9ICh1bnNpZ25l
ZCBzaG9ydCAqKXN0OworICAgIHVuc2lnbmVkIGludCAqcDQgPSAodW5zaWdu
ZWQgaW50ICopc3Q7CisgICAgRFdPUkQgaGlnaCA9IHBpbmZvLT5uRmlsZUlu
ZGV4SGlnaDsKKyAgICBwMlsyXSA9IGhpZ2ggPj4gMTY7CisgICAgcDJbN10g
PSBoaWdoICYgMHhGRkZGOworICAgIHA0WzVdID0gcGluZm8tPm5GaWxlSW5k
ZXhMb3c7Cit9CisKKy8qIExpY2Vuc2U6IFJ1YnkncyAqLworc3RhdGljIERX
T1JECitzdGF0aTY0X3NldF9pbm9kZV9oYW5kbGUoSEFORExFIGgsIHN0cnVj
dCBzdGF0aTY0ICpzdCkKK3sKKyAgICBCWV9IQU5ETEVfRklMRV9JTkZPUk1B
VElPTiBpbmZvOworICAgIERXT1JEIGF0dHIgPSAoRFdPUkQpLTE7CisKKyAg
ICBpZiAoR2V0RmlsZUluZm9ybWF0aW9uQnlIYW5kbGUoaCwgJmluZm8pKSB7
CisJc3RhdGk2NF9zZXRfaW5vZGUoJmluZm8sIHN0KTsKKyAgICB9CisgICAg
cmV0dXJuIGF0dHI7Cit9CisKICN1bmRlZiBmc3RhdAogLyogTGljZW5zZTog
UnVieSdzICovCiBpbnQKQEAgLTUwMDAsNyArNTA0MiwxMSBAQCByYl93MzJf
ZnN0YXRpNjQoaW50IGZkLCBzdHJ1Y3Qgc3RhdGk2NCAqc3QpCiAgICAgc3Ry
dWN0IHN0YXQgdG1wOwogICAgIGludCByZXQ7CiAKLSAgICBpZiAoR2V0RW52
aXJvbm1lbnRWYXJpYWJsZVcoTCJUWiIsIE5VTEwsIDApID09IDAgJiYgR2V0
TGFzdEVycm9yKCkgPT0gRVJST1JfRU5WVkFSX05PVF9GT1VORCkgcmV0dXJu
IF9mc3RhdGk2NChmZCwgc3QpOworICAgIGlmIChHZXRFbnZpcm9ubWVudFZh
cmlhYmxlVyhMIlRaIiwgTlVMTCwgMCkgPT0gMCAmJiBHZXRMYXN0RXJyb3Io
KSA9PSBFUlJPUl9FTlZWQVJfTk9UX0ZPVU5EKSB7CisJcmV0ID0gX2ZzdGF0
aTY0KGZkLCBzdCk7CisJc3RhdGk2NF9zZXRfaW5vZGVfaGFuZGxlKChIQU5E
TEUpX2dldF9vc2ZoYW5kbGUoZmQpLCBzdCk7CisJcmV0dXJuIHJldDsKKyAg
ICB9CiAgICAgcmV0ID0gZnN0YXQoZmQsICZ0bXApOwogCiAgICAgaWYgKHJl
dCkgcmV0dXJuIHJldDsKQEAgLTUwMjIsNiArNTA2OCw3IEBAIHN0YXRpNjRf
aGFuZGxlKEhBTkRMRSBoLCBzdHJ1Y3Qgc3RhdGk2NCAqc3QpCiAJc3QtPnN0
X210aW1lID0gZmlsZXRpbWVfdG9fdW5peHRpbWUoJmluZm8uZnRMYXN0V3Jp
dGVUaW1lKTsKIAlzdC0+c3RfY3RpbWUgPSBmaWxldGltZV90b191bml4dGlt
ZSgmaW5mby5mdENyZWF0aW9uVGltZSk7CiAJc3QtPnN0X25saW5rID0gaW5m
by5uTnVtYmVyT2ZMaW5rczsKKwlzdGF0aTY0X3NldF9pbm9kZSgmaW5mbywg
c3QpOwogCWF0dHIgPSBpbmZvLmR3RmlsZUF0dHJpYnV0ZXM7CiAgICAgfQog
ICAgIHJldHVybiBhdHRyOwpgYGAKCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5
LWxhbmcub3JnLwo=

In This Thread

Prev Next