com gtk/php-gtk: - Tom's patch to allow individual extension builds, plus - general clean-up - new configure switch, --all - extension config.w32 scripts need to check for PHP_GTK_ALL to be included : win32/buildconf.js win32/config.w32.i n win32/confutils.js

[email protected] (David Soria Parra) Sat, 24 Sep 2005 14:14:45 +0000
Newsgroups php.gtk.cvs
Message-ID <[email protected]>
--012786693c04e98183593390ffb915eba0f4a383
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Commit:    2cfea59888137fbfd206a5cdd186034036375027=0AAuthor:    Steph Fox =
<[email protected]>         Sat, 24 Sep 2005 14:14:45 +0000=0AParents:   86c4bd5=
123e77ca06fc679911a27b8f15ce9bc6f=0ABranches:  master=0A=0ALink:       http=
://git.php.net/?p=3Dgtk/php-gtk.git;a=3Dcommitdiff;h=3D2cfea59888137fbfd206=
a5cdd186034036375027=0A=0ALog:=0A- Tom's patch to allow individual extensio=
n builds, plus=0A- general clean-up=0A- new configure switch, --all=0A- ext=
ension config.w32 scripts need to check for PHP_GTK_ALL to be included=0A=
=0AChanged paths:=0A  M  win32/buildconf.js=0A  M  win32/config.w32.in=0A  =
M  win32/confutils.js=0A=0A
--012786693c04e98183593390ffb915eba0f4a383
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="diff_2cfea59888137fbfd206a5cdd186034036375027.txt"

MmNmZWE1OTg4ODEzN2ZiZmQyMDZhNWNkZDE4NjAzNDAzNjM3NTAyNwpkaWZmIC0tZ2l0IGEvd2lu
MzIvYnVpbGRjb25mLmpzIGIvd2luMzIvYnVpbGRjb25mLmpzCmluZGV4IDA2ZGI3M2IuLjRmYjE4
ZGEgMTAwNjQ0Ci0tLSBhL3dpbjMyL2J1aWxkY29uZi5qcworKysgYi93aW4zMi9idWlsZGNvbmYu
anMKQEAgLTE2LDcgKzE2LDcgQEAKICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAqLwogCi0vKiAkSWQ6IGJ1
aWxkY29uZi5qcyx2IDEuMyAyMDA1LTA5LTEzIDE3OjAyOjEwIHNmb3ggRXhwICQgKi8KKy8qICRJ
ZDogYnVpbGRjb25mLmpzLHYgMS40IDIwMDUtMDktMjQgMTQ6MTQ6NDUgc2ZveCBFeHAgJCAqLwog
Ly8gVGhpcyBnZW5lcmF0ZXMgYSBjb25maWd1cmUgc2NyaXB0IGZvciB3aW4zMiBidWlsZAogCiB2
YXIgRlNPID0gV1NjcmlwdC5DcmVhdGVPYmplY3QoIlNjcmlwdGluZy5GaWxlU3lzdGVtT2JqZWN0
Iik7CkBAIC01OSwxMiArNTksMTEgQEAgZnVuY3Rpb24gZ2VuX2Z1bmN0aW9ucygpIHsKIAlyZXR1
cm47CiB9CiAKLWZ1bmN0aW9uIE1vZHVsZV9JdGVtKG1vZHVsZV9uYW1lLCBjb25maWdfcGF0aCwg
ZGlyX2xpbmUsIGRlcHMsIGNvbnRlbnQpIHsKK2Z1bmN0aW9uIE1vZHVsZV9JdGVtKG1vZHVsZV9u
YW1lLCBjb25maWdfcGF0aCwgZGlyX2xpbmUsIGNvbnRlbnQpIHsKIAogCXRoaXMubW9kdWxlX25h
bWUgPSBtb2R1bGVfbmFtZTsKIAl0aGlzLmNvbmZpZ19wYXRoID0gY29uZmlnX3BhdGg7CiAJdGhp
cy5kaXJfbGluZSA9IGRpcl9saW5lOwotCXRoaXMuZGVwcyA9IGRlcHM7CiAJdGhpcy5jb250ZW50
ID0gY29udGVudDsKIH0KIApAQCAtNzUsMjAgKzc0LDEzIEBAIGZ1bmN0aW9uIGdlbl9tb2R1bGVz
KCkgewogCXZhciBpdGVtOwogCXZhciBvdXRwdXQgPSAiIjsKIAotCS8vIGZpcnN0LCBsb29rIGZv
ciBtb2R1bGVzIHdpdGggZW1wdHkgZGVwczsgZW1pdCB0aG9zZSBmaXJzdAogCWZvciAoaSBpbiBt
b2R1bGVfbmFtZXMpIHsKIAkJbW9kX25hbWUgPSBtb2R1bGVfbmFtZXNbaV07CiAJCWl0ZW0gPSBN
T0RVTEVTLkl0ZW0obW9kX25hbWUpOwotCQlpZiAoaXRlbS5kZXBzLmxlbmd0aCA9PSAwKSB7Ci0J
CQlNT0RVTEVTLlJlbW92ZShtb2RfbmFtZSk7Ci0JCQlvdXRwdXQgKz0gZW1pdF9tb2R1bGUoaXRl
bSk7Ci0JCX0KKwkJTU9EVUxFUy5SZW1vdmUobW9kX25hbWUpOworCQlvdXRwdXQgKz0gZW1pdF9t
b2R1bGUoaXRlbSk7CiAJfQogCi0JLy8gbm93IHdlIGFyZSBsZWZ0IHdpdGggbW9kdWxlcyB0aGF0
IGhhdmUgZGVwZW5kZW5jaWVzIG9uIG90aGVyIG1vZHVsZXMKLQltb2R1bGVfbmFtZXMgPSAobmV3
IFZCQXJyYXkoTU9EVUxFUy5LZXlzKCkpKS50b0FycmF5KCk7Ci0Jb3V0cHV0ICs9IGVtaXRfZGVw
X21vZHVsZXMobW9kdWxlX25hbWVzKTsKLQogCXJldHVybiBvdXRwdXQ7CiB9CiAKQEAgLTk3LDI4
ICs4OSw2IEBAIGZ1bmN0aW9uIGVtaXRfbW9kdWxlKGl0ZW0pIHsKIAlyZXR1cm4gaXRlbS5kaXJf
bGluZSArIGl0ZW0uY29udGVudDsKIH0KIAotZnVuY3Rpb24gZW1pdF9kZXBfbW9kdWxlcyhtb2R1
bGVfbmFtZXMpIHsKLQotCXZhciBpLCBtb2RfbmFtZSwgajsKLQl2YXIgb3V0cHV0ID0gIiI7Ci0J
dmFyIGl0ZW0gPSBudWxsOwotCi0JZm9yIChpIGluIG1vZHVsZV9uYW1lcykgewotCQltb2RfbmFt
ZSA9IG1vZHVsZV9uYW1lc1tpXTsKLQotCQlpZiAoTU9EVUxFUy5FeGlzdHMobW9kX25hbWUpKSB7
Ci0JCQlpdGVtID0gTU9EVUxFUy5JdGVtKG1vZF9uYW1lKTsKLQkJCU1PRFVMRVMuUmVtb3ZlKG1v
ZF9uYW1lKTsKLQkJCWlmIChpdGVtLmRlcHMubGVuZ3RoKSB7Ci0JCQkJb3V0cHV0ICs9IGVtaXRf
ZGVwX21vZHVsZXMoaXRlbS5kZXBzKTsKLQkJCX0KLQkJCW91dHB1dCArPSBlbWl0X21vZHVsZShp
dGVtKTsKLQkJfQotCX0KLQotCXJldHVybiBvdXRwdXQ7Ci19Ci0KIGZ1bmN0aW9uIGZpbmRfY29u
ZmlnX3czMihkaXJuYW1lKSB7CiAKIAlpZiAoIUZTTy5Gb2xkZXJFeGlzdHMoZGlybmFtZSkpIHsK
QEAgLTEyOSw4ICs5OSw3IEBAIGZ1bmN0aW9uIGZpbmRfY29uZmlnX3czMihkaXJuYW1lKSB7CiAJ
dmFyCWZjID0gbmV3IEVudW1lcmF0b3IoZi5TdWJGb2xkZXJzKTsKIAl2YXIgYywgaSwgb2ssIG47
CiAJdmFyIGl0ZW0gPSBudWxsOwotCXZhciByZV9kZXBfbGluZSA9IG5ldyBSZWdFeHAoIkFERF9F
WFRFTlNJT05fREVQXFwoW14sXSpcXHMqLFxccypbJ1wiXShbXidcIl0rKVsnXCJdLipcXCk7Iiwg
ImdtIik7Ci0JCisKIAlmb3IgKDsgIWZjLmF0RW5kKCk7IGZjLm1vdmVOZXh0KCkpIHsKIAkJb2sg
PSB0cnVlOwogCQkvKiBjaGVjayBpZiB3ZSBhbHJlYWR5IHBpY2tlZCB1cCBhIG1vZHVsZSB3aXRo
IHRoZSBzYW1lIGRpcm5hbWU7CkBAIC0xNjAsMjEgKzEyOSw4IEBAIGZ1bmN0aW9uIGZpbmRfY29u
ZmlnX3czMihkaXJuYW1lKSB7CiAJCQl2YXIgZGlyX2xpbmUgPSAiY29uZmlndXJlX21vZHVsZV9k
aXJuYW1lID0gY29uZGVuc2VfcGF0aChGU08uR2V0UGFyZW50Rm9sZGVyTmFtZSgnIgogCQkJCQkJ
CSAgIAkrIGMucmVwbGFjZShuZXcgUmVnRXhwKCcoWyJcXFxcXSknLCAiZyIpLCAnXFwkMScpICsg
IicpKTtcclxuIjsKIAkJCXZhciBjb250ZW50cyA9IGZpbGVfZ2V0X2NvbnRlbnRzKGMpOwotCQkJ
dmFyIGRlcHMgPSBuZXcgQXJyYXkoKTsKLQotCQkJLy8gcGFyc2Ugb3V0IGFueSBkZXBzIGZyb20g
dGhlIGZpbGUKLQkJCXZhciBjYWxscyA9IGNvbnRlbnRzLm1hdGNoKHJlX2RlcF9saW5lKTsKLQot
CQkJaWYgKGNhbGxzICE9IG51bGwpIHsKLQkJCQlmb3IgKGkgPSAwOyBpIDwgY2FsbHMubGVuZ3Ro
OyBpKyspIHsKLQkJCQkJLy8gbm93IHdlIG5lZWQgdGhlIGV4dGVuc2lvbiBuYW1lIG91dCBvZiB0
aGlzIHRoaW5nCi0JCQkJCWlmIChjYWxsc1tpXS5tYXRjaChyZV9kZXBfbGluZSkpIHsKLQkJCQkJ
CWRlcHNbZGVwcy5sZW5ndGhdID0gUmVnRXhwLiQxOwotCQkJCQl9Ci0JCQkJfQotCQkJfQogCi0J
CQlpdGVtID0gbmV3IE1vZHVsZV9JdGVtKG4sIGMsIGRpcl9saW5lLCBkZXBzLCBjb250ZW50cyk7
CisJCQlpdGVtID0gbmV3IE1vZHVsZV9JdGVtKG4sIGMsIGRpcl9saW5lLCBjb250ZW50cyk7CiAJ
CQlNT0RVTEVTLkFkZChuLCBpdGVtKTsKIAkJfQogCX0KQEAgLTIxOCwxMiArMTc0LDExIEBAIG1v
ZHVsZXMgPSBmaWxlX2dldF9jb250ZW50cygid2luMzIvY29uZmlnLnczMi5pbiIpOwogLy8gUGlj
ayB1cCBjb25mcyBmcm9tIGV4dGVuc2lvbnMgaWYgcHJlc2VudAogZmluZF9jb25maWdfdzMyKCJl
eHQiKTsKIAotLyogTm93IGdlbmVyYXRlIGNvbnRlbnRzIG9mIG1vZHVsZSBiYXNlZCBvbiBNT0RV
TEVTLCBjaGFzaW5nIGRlcGVuZGVuY2llcyB0bwotZW5zdXJlIHRoYXQgZGVwZW5kZW50IG1vZHVs
ZXMgYXJlIGVtaXR0ZWQgZmlyc3QgKi8KKy8qIE5vdyBnZW5lcmF0ZSBjb250ZW50cyBvZiBtb2R1
bGUgYmFzZWQgb24gTU9EVUxFUyAqLwogbW9kdWxlcyArPSBnZW5fbW9kdWxlcygpOwogCiAvLyBM
b29rIGZvciBBUkdfRU5BQkxFIG9yIEFSR19XSVRIIGNhbGxzCi1yZSA9IG5ldyBSZWdFeHAoIihB
UkdfKEVOQUJMRXxXSVRIKVwoW147XStcKTspIiwgImdtIik7CityZSA9IG5ldyBSZWdFeHAoIihB
UkdfKEVOQUJMRXxXSVRIfElTKVwoW147XStcKTspIiwgImdtIik7CiBjYWxscyA9IG1vZHVsZXMu
bWF0Y2gocmUpOwogZm9yIChpID0gMDsgaSA8IGNhbGxzLmxlbmd0aDsgaSsrKSB7CiAJaXRlbSA9
IGNhbGxzW2ldOwpkaWZmIC0tZ2l0IGEvd2luMzIvY29uZmlnLnczMi5pbiBiL3dpbjMyL2NvbmZp
Zy53MzIuaW4KaW5kZXggNWE5NzliZS4uMjRiYWQyZCAxMDA2NDQKLS0tIGEvd2luMzIvY29uZmln
LnczMi5pbgorKysgYi93aW4zMi9jb25maWcudzMyLmluCkBAIC00Miw3ICs0Miw3IEBAIGlmIChD
TCkgewogfQogCiBTVERPVVQuV3JpdGVCbGFua0xpbmVzKDEpOwotCitBUkdfSVMoJ2FsbCcsICdD
b25maWd1cmUgYWxsIGF2YWlsYWJsZSB0YXJnZXRzJywgJ25vJyk7CiBBUkdfV0lUSCgncGhwLWJ1
aWxkJywgJ1BhdGggdG8gd2hlcmUgeW91IGV4dHJhY3RlZCBodHRwOi8vd3d3LnBocC5uZXQvZXh0
cmEvd2luMzJidWlsZC56aXAuIEFzc3VtZXMgdGhhdCBpdCBpcyBhIHNpYmxpbmcgb2YgdGhpcyBz
b3VyY2UgZGlyICguLlxccGhwX2J1aWxkKSBpZiBub3Qgc3BlY2lmaWVkJywgJ25vJyk7CiBBUkdf
V0lUSCgnY3lnd2luJywgJ1BhdGggdG8gY3lnd2luIHV0aWxpdGllcyBvbiB5b3VyIHN5c3RlbScs
ICdcXGN5Z3dpbicpOwogCmRpZmYgLS1naXQgYS93aW4zMi9jb25mdXRpbHMuanMgYi93aW4zMi9j
b25mdXRpbHMuanMKaW5kZXggMWRmMzM4Mi4uYmU5MDYyMCAxMDA2NDQKLS0tIGEvd2luMzIvY29u
ZnV0aWxzLmpzCisrKyBiL3dpbjMyL2NvbmZ1dGlscy5qcwpAQCAtMTcsNyArMTcsNyBAQAogICAr
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSsKICovCiAKLS8vICRJZDogY29uZnV0aWxzLmpzLHYgMS4xMSAyMDA1LTA5
LTIzIDEwOjA4OjAzIHNmb3ggRXhwICQKKy8vICRJZDogY29uZnV0aWxzLmpzLHYgMS4xMiAyMDA1
LTA5LTI0IDE0OjE0OjQ1IHNmb3ggRXhwICQKIAogLyogc2V0IHZhcnMgKi8KIHZhciBTVERPVVQg
PSBXU2NyaXB0LlN0ZE91dDsKQEAgLTQzLDYgKzQzLDcgQEAgY29uZmlndXJlX3N1YnN0ID0gV1Nj
cmlwdC5DcmVhdGVPYmplY3QoIlNjcmlwdGluZy5EaWN0aW9uYXJ5Iik7CiAKIGNvbmZpZ3VyZV9o
ZHIgPSBXU2NyaXB0LkNyZWF0ZU9iamVjdCgiU2NyaXB0aW5nLkRpY3Rpb25hcnkiKTsKIGJ1aWxk
X2RpcnMgPSBuZXcgQXJyYXkoKTsKK21ha2VfYnVpbGRzID0gbmV3IEFycmF5KCk7CiAKIGV4dGVu
c2lvbl9pbmNsdWRlX2NvZGUgPSAiIjsKIGV4dGVuc2lvbl9tb2R1bGVfcHRycyA9ICIiOwpAQCAt
MTY2LDE0ICsxNjcsMjEgQEAgZnVuY3Rpb24gY29uZGVuc2VfcGF0aChwYXRoKSB7CiAKIGZ1bmN0
aW9uIENvbmZpZ3VyZUFyZyh0eXBlLCBvcHRuYW1lLCBoZWxwdGV4dCwgZGVmdmFsKSB7CiAKLQl2
YXIgb3BwdHlwZSA9IHR5cGUgPT0gImVuYWJsZSIgPyAiZGlzYWJsZSIgOiAid2l0aG91dCI7CisJ
dmFyIG9wcHR5cGUgPSAiIjsKKwkKKwlpZiAodHlwZSkgeworCisJCW9wcHR5cGUgPSB0eXBlID09
ICJlbmFibGUiID8gImRpc2FibGUiIDogIndpdGhvdXQiOwogCi0JaWYgKGRlZnZhbCA9PSAieWVz
IiB8fCBkZWZ2YWwgPT0gInllcyxzaGFyZWQiKSB7Ci0JCXRoaXMuYXJnID0gIi0tIiArIG9wcHR5
cGUgKyAiLSIgKyBvcHRuYW1lOwotCQl0aGlzLmltcGFyZyA9ICItLSIgKyB0eXBlICsgIi0iICsg
b3B0bmFtZTsKKwkJaWYgKGRlZnZhbCA9PSAieWVzIiB8fCBkZWZ2YWwgPT0gInllcyxzaGFyZWQi
KSB7CisJCQl0aGlzLmFyZyA9ICItLSIgKyBvcHB0eXBlICsgIi0iICsgb3B0bmFtZTsKKwkJCXRo
aXMuaW1wYXJnID0gIi0tIiArIHR5cGUgKyAiLSIgKyBvcHRuYW1lOworCQl9IGVsc2UgeworCQkJ
dGhpcy5hcmcgPSAiLS0iICsgdHlwZSArICItIiArIG9wdG5hbWU7CisJCQl0aGlzLmltcGFyZyA9
ICItLSIgKyBvcHB0eXBlICsgIi0iICsgb3B0bmFtZTsKKwkJfQogCX0gZWxzZSB7Ci0JCXRoaXMu
YXJnID0gIi0tIiArIHR5cGUgKyAiLSIgKyBvcHRuYW1lOwotCQl0aGlzLmltcGFyZyA9ICItLSIg
KyBvcHB0eXBlICsgIi0iICsgb3B0bmFtZTsKKwkJdGhpcy5hcmcgPSAiLS0iICsgb3B0bmFtZTsK
IAl9CiAKIAl0aGlzLm9wdG5hbWUgPSBvcHRuYW1lOwpAQCAtMTg3LDIzICsxOTUsMTggQEAgZnVu
Y3Rpb24gQ29uZmlndXJlQXJnKHR5cGUsIG9wdG5hbWUsIGhlbHB0ZXh0LCBkZWZ2YWwpIHsKIGZ1
bmN0aW9uIGFuYWx5emVfYXJnKGFyZ3ZhbCkgewogCiAJdmFyIHJldCA9IG5ldyBBcnJheSgpOwot
CXZhciBzaGFyZWQgPSBmYWxzZTsKIAogCWlmIChhcmd2YWwgPT0gInNoYXJlZCIpIHsKLQkJc2hh
cmVkID0gdHJ1ZTsKIAkJYXJndmFsID0gInllcyI7CiAJfSBlbHNlIGlmIChhcmd2YWwgPT0gbnVs
bCkgewogCQkvKiBub3RoaW5nICovCiAJfSBlbHNlIGlmIChhcmdfbWF0Y2ggPSBhcmd2YWwubWF0
Y2gobmV3IFJlZ0V4cCgiXnNoYXJlZCwoLiopIikpKSB7Ci0JCXNoYXJlZCA9IHRydWU7CiAJCWFy
Z3ZhbCA9IGFyZ19tYXRjaFsxXTsKIAl9IGVsc2UgaWYgKGFyZ19tYXRjaCA9IGFyZ3ZhbC5tYXRj
aChuZXcgUmVnRXhwKCJeKC4qKSxzaGFyZWQkIikpKSB7Ci0JCXNoYXJlZCA9IHRydWU7CiAJCWFy
Z3ZhbCA9IGFyZ19tYXRjaFsxXTsKIAl9CiAKLQlyZXRbMF0gPSBzaGFyZWQ7Ci0JcmV0WzFdID0g
YXJndmFsOworCXJldFswXSA9IGFyZ3ZhbDsKIAlyZXR1cm4gcmV0OwogfQogCkBAIC0yMTMsOSAr
MjE2LDkgQEAgZnVuY3Rpb24gY29uZl9wcm9jZXNzX2FyZ3MoKSB7CiAJdmFyIGNvbmZpZ3VyZV9o
ZWxwX21vZGUgPSBmYWxzZTsKIAl2YXIgYW5hbHl6ZWQgPSBmYWxzZTsKIAl2YXIgbmljZSA9ICJj
c2NyaXB0IC9ub2xvZ28gY29uZmlndXJlLmpzICI7Ci0JdmFyIGRpc2FibGVfYWxsID0gZmFsc2U7
CiAKIAlhcmdzID0gV1NjcmlwdC5Bcmd1bWVudHM7CisKIAlmb3IgKGkgPSAwOyBpIDwgYXJncy5s
ZW5ndGg7IGkrKykgewogCQlhcmcgPSBhcmdzKGkpOwogCQluaWNlICs9ICcgIicgKyBhcmcgKyAn
Iic7CkBAIC0yMjMsMTAgKzIyNiw2IEBAIGZ1bmN0aW9uIGNvbmZfcHJvY2Vzc19hcmdzKCkgewog
CQkJY29uZmlndXJlX2hlbHBfbW9kZSA9IHRydWU7CiAJCQlicmVhazsKIAkJfQotCQlpZiAoYXJn
ID09ICItLWRpc2FibGUtYWxsIikgewotCQkJZGlzYWJsZV9hbGwgPSB0cnVlOwotCQkJY29udGlu
dWU7Ci0JCX0KIAogCQkvLyBJZiBpdCBpcyAtLWZvbz1iYXIsIHNwbGl0IG9uIHRoZSBlcXVhbHMg
c2lnbgogCQlhcmcgPSBhcmcuc3BsaXQoIj0iLCAyKTsKQEAgLTI0Nyw4ICsyNDYsNyBAQCBmdW5j
dGlvbiBjb25mX3Byb2Nlc3NfYXJncygpIHsKIAkJCQlhcmcuc2VlbiA9IHRydWU7CiAKIAkJCQlh
bmFseXplZCA9IGFuYWx5emVfYXJnKGFyZ3ZhbCk7Ci0JCQkJc2hhcmVkID0gYW5hbHl6ZWRbMF07
Ci0JCQkJYXJndmFsID0gYW5hbHl6ZWRbMV07CisJCQkJYXJndmFsID0gYW5hbHl6ZWRbMF07CiAK
IAkJCQlpZiAoYXJnbmFtZSA9PSBhcmcuaW1wYXJnKSB7CiAJCQkJCS8qIHdlIG1hdGNoZWQgdGhl
IGltcGxpY2l0LCBvciBkZWZhdWx0IGFyZyAqLwpAQCAtMjY0LDIwICsyNjIsMTggQEAgZnVuY3Rp
b24gY29uZl9wcm9jZXNzX2FyZ3MoKSB7CiAJCQkJCiAJCQkJYXJnLmFyZ3ZhbCA9IGFyZ3ZhbDsK
IAkJCQlldmFsKCJQSFBfR1RLXyIgKyBhcmcuc3ltdmFsICsgIiA9IGFyZ3ZhbDsiKTsKLQkJCQll
dmFsKCJQSFBfR1RLXyIgKyBhcmcuc3ltdmFsICsgIl9TSEFSRUQgPSBzaGFyZWQ7Iik7CiAJCQkJ
YnJlYWs7CiAJCQl9CiAJCX0KIAkJaWYgKCFmb3VuZCkgewotCQkJU1RERVJSLldyaXRlTGluZSgi
VW5rbm93biBvcHRpb24gIiArIGFyZ25hbWUpCisJCQlTVERFUlIuV3JpdGVMaW5lKCJVbmtub3du
IG9wdGlvbiAiICsgYXJnbmFtZSk7CiAJCQlTVERFUlIuV3JpdGVMaW5lKCJQbGVhc2UgdHJ5IGNv
bmZpZ3VyZS5qcyAtLWhlbHAgZm9yIGEgbGlzdCBvZiB2YWxpZCBvcHRpb25zIik7CiAJCQlXU2Ny
aXB0LlF1aXQoMik7CiAJCX0KIAl9CiAKIAlpZiAoY29uZmlndXJlX2hlbHBfbW9kZSkgewotCQlT
VERPVVQuV3JpdGVCbGFua0xpbmVzKDEpOwotCQlTVERPVVQuV3JpdGVMaW5lKCIgIFRoZXJlIGFy
ZSBubyBQSFAtR1RLIGV4dGVuc2lvbnMgYXZhaWxhYmxlIGF0IHByZXNlbnQuIik7CisKIAkJU1RE
T1VULldyaXRlQmxhbmtMaW5lcygxKTsKIAogCQkvLyBNZWFzdXJlIHdpZHRoIHRvIHByZXR0eS1w
cmludCB0aGUgb3V0cHV0CkBAIC0zMTIsMTYgKzMwOCw5IEBAIGZ1bmN0aW9uIGNvbmZfcHJvY2Vz
c19hcmdzKCkgewogCQlpZiAoYXJnLnNlZW4pCiAJCQljb250aW51ZTsKIAkJYW5hbHl6ZWQgPSBh
bmFseXplX2FyZyhhcmcuZGVmdmFsKTsKLQkJc2hhcmVkID0gYW5hbHl6ZWRbMF07Ci0JCWFyZ3Zh
bCA9IGFuYWx5emVkWzFdOwotCi0JCWlmIChkaXNhYmxlX2FsbCkgewotCQkJYXJndmFsID0gIm5v
IjsKLQkJCXNoYXJlZCA9IGZhbHNlOwotCQl9CisJCWFyZ3ZhbCA9IGFuYWx5emVkWzBdOwogCiAJ
CWV2YWwoIlBIUF9HVEtfIiArIGFyZy5zeW12YWwgKyAiID0gYXJndmFsOyIpOwotCQlldmFsKCJQ
SFBfR1RLXyIgKyBhcmcuc3ltdmFsICsgIl9TSEFSRUQgPSBzaGFyZWQ7Iik7CiAJfQogCiAJTUZP
ID0gRlNPLkNyZWF0ZVRleHRGaWxlKCJNYWtlZmlsZS5vYmplY3RzIiwgdHJ1ZSk7CkBAIC0zNTQs
NiArMzQzLDExIEBAIGZ1bmN0aW9uIGZpbmRfcGF0dGVybl9pbl9wYXRoKHBhdHRlcm4sIHBhdGgp
IHsKIAlyZXR1cm4gZmFsc2U7CiB9CiAKK2Z1bmN0aW9uIEFSR19JUyhvcHRuYW1lLCBoZWxwdGV4
dCwgZGVmdmFsKSB7CisKKwljb25maWd1cmVfYXJnc1tjb25maWd1cmVfYXJncy5sZW5ndGhdID0g
bmV3IENvbmZpZ3VyZUFyZygiIiwgb3B0bmFtZSwgaGVscHRleHQsIGRlZnZhbCk7Cit9CisKIGZ1
bmN0aW9uIEFSR19XSVRIKG9wdG5hbWUsIGhlbHB0ZXh0LCBkZWZ2YWwpIHsKIAogCWNvbmZpZ3Vy
ZV9hcmdzW2NvbmZpZ3VyZV9hcmdzLmxlbmd0aF0gPSBuZXcgQ29uZmlndXJlQXJnKCJ3aXRoIiwg
b3B0bmFtZSwgaGVscHRleHQsIGRlZnZhbCk7CkBAIC02MzUsNyArNjI5LDcgQEAgZnVuY3Rpb24g
RVhURU5TSU9OKGV4dG5hbWUsIGZpbGVfbGlzdCwgc2hhcmVkLCBjZmxhZ3MsIGRsbG5hbWUsIG9i
al9kaXIpIHsKIAkJZXh0bmFtZV9mb3JfcHJpbnRpbmcgPSBjb25maWd1cmVfbW9kdWxlX2Rpcm5h
bWUgKyAiICh2aWEgIiArIG9ial9kaXIgKyAiKSI7CiAJfQogCi0JU1RET1VULldyaXRlTGluZSgi
RW5hYmxpbmcgZXh0ZW5zaW9uICIgKyBleHRuYW1lX2Zvcl9wcmludGluZyArICIgW3NoYXJlZF0i
KTsKKwlTVERPVVQuV3JpdGVMaW5lKCJFbmFibGluZyBleHRlbnNpb24gIiArIGV4dG5hbWVfZm9y
X3ByaW50aW5nKTsKIAogCWNmbGFncyA9ICIvRCBDT01QSUxFX0RMXyIgKyBFWFQgKyAiMiAvRCAi
ICsgRVhUICsgIl9FWFBPUlRTPTEiICsgY2ZsYWdzOwogCkBAIC02NjQsNyArNjU4LDggQEAgZnVu
Y3Rpb24gRVhURU5TSU9OKGV4dG5hbWUsIGZpbGVfbGlzdCwgc2hhcmVkLCBjZmxhZ3MsIGRsbG5h
bWUsIG9ial9kaXIpIHsKIAl2YXIgbGlibmFtZSA9IGRsbG5hbWUuc3Vic3RyaW5nKDAsIGRsbG5h
bWUubGVuZ3RoLTQpICsgIi5saWIiOwogCXZhciBsZCA9ICJAJChMRCkiOwogCi0JQUREX0ZMQUco
IkVYVF9UQVJHRVRTIiwgIiQoQlVJTERfRElSKVxcIitkbGxuYW1lKTsKKwlBRERfRkxBRygiRVhU
X1RBUkdFVFMiLCAiJChCVUlMRF9ESVIpXFwiICsgZGxsbmFtZSk7CisJbWFrZV9idWlsZHNbbWFr
ZV9idWlsZHMubGVuZ3RoXSA9IGV4dG5hbWUgKyAiOiAkKEJVSUxEX0RJUilcXCIgKyBkbGxuYW1l
OwogCiAJTUZPLldyaXRlTGluZSgiJChCVUlMRF9ESVIpXFwiICsgZGxsbmFtZSArICI6ICQoIiAr
IEVYVCArICJfR0xPQkFMX09CSlMpIiArIHJlc192YXIpOwogCU1GTy5Xcml0ZUxpbmUoIlx0IiAr
IGxkICsgIiAvb3V0OiQoQlVJTERfRElSKVxcIiArIGRsbG5hbWUgKyAiICQoIiArIEVYVCArICJf
TERGTEFHUykiICsgZGxsZmxhZ3MgKyAiICQoTERGTEFHUykgJCgiICsgRVhUICsgIl9HTE9CQUxf
T0JKUykgJChMSUJTXyIgKyBFWFQgKyAiKSIgKyBkZXBfbGlicyArICIgJChMSUJTKSIgKyByZXNf
dmFyKTsKQEAgLTk0Miw3ICs5MzcsOCBAQCBmdW5jdGlvbiBnZW5lcmF0ZV9maWxlcygpIHsKIAog
CVNURE9VVC5Xcml0ZUxpbmUoIkRvbmUuIik7CiAJU1RET1VULldyaXRlQmxhbmtMaW5lcygxKTsK
LQlTVERPVVQuV3JpdGVMaW5lKCJUeXBlICdubWFrZScgdG8gYnVpbGQgUEhQLUdUSyIpOworCVNU
RE9VVC5Xcml0ZUxpbmUoIlR5cGUgJ25tYWtlJyB0byBidWlsZCBhbGwgdGFyZ2V0cywgb3IgJ25t
YWtlIHBocC1ndGsnIHRvIGJ1aWxkIFBIUC1HVEsgYWxvbmUiKTsKKwlTVERPVVQuV3JpdGVMaW5l
KCIqIENvbmZpZ3VyZWQgUEhQLUdUSyBleHRlbnNpb25zIGNhbiBiZSBidWlsdCBpbmRpdmlkdWFs
bHkgYXQgYSBsYXRlciBzdGFnZSAqIik7CiB9CiAKIGZ1bmN0aW9uIGdlbmVyYXRlX21ha2VmaWxl
KCkgewpAQCAtOTY2LDYgKzk2MiwxMSBAQCBmdW5jdGlvbiBnZW5lcmF0ZV9tYWtlZmlsZSgpIHsK
IAogCU1GLldyaXRlQmxhbmtMaW5lcygxKTsKIAlNRi5Xcml0ZUxpbmUoImFsbDogJChFWFRfVEFS
R0VUUykiKTsKKworCWZvciAoaSA9IDA7IGkgPCBtYWtlX2J1aWxkcy5sZW5ndGg7IGkrKykgewor
CQlNRi5Xcml0ZUxpbmUobWFrZV9idWlsZHNbaV0pOworCX0KKwogCU1GLldyaXRlTGluZSgiYnVp
bGRfZGlyczogJChCVUlMRF9ESVIpICQoQlVJTERfRElSU19TVUIpIik7CiAJTUYuV3JpdGVCbGFu
a0xpbmVzKDEpOw==

--012786693c04e98183593390ffb915eba0f4a383--