<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>52284</bug_id>
          
          <creation_ts>2011-01-12 02:46:51 -0800</creation_ts>
          <short_desc>Split Host object off from WebKitPatch for easier re-use</short_desc>
          <delta_ts>2011-01-21 03:24:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Eric Seidel (no email)">eric</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>levin</cc>
    
    <cc>mihaip</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>332986</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-01-12 02:46:51 -0800</bug_when>
    <thetext>Split Host object off from WebKitPatch for easier re-use</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>332987</commentid>
    <comment_count>1</comment_count>
      <attachid>78669</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-01-12 02:47:47 -0800</bug_when>
    <thetext>Created attachment 78669
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>332988</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-01-12 02:49:19 -0800</bug_when>
    <thetext>Should be trivial to write additional scripts which use webkitpy (including steps and command objects) w/o being webkit-patch now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>332991</commentid>
    <comment_count>3</comment_count>
      <attachid>78669</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-01-12 02:57:05 -0800</bug_when>
    <thetext>Comment on attachment 78669
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=78669&amp;action=review

We should probably rename all the tool variables / properties to host.

&gt; Tools/Scripts/webkitpy/common/host.py:30
&gt; +# Command objects expect to have a self.tool which provides these interfaces.

Command objects aren&apos;t a concept that make sense in common.  I&apos;d just remove this comment.

&gt; Tools/Scripts/webkitpy/common/host.py:44
&gt; +        self.bugs = bugzilla.Bugzilla()
&gt; +        self.buildbot = buildbot.BuildBot()
&gt; +        self.executive = executive.Executive()

Why don&apos;t we just import these names directly instead of using this goofy syntax?

&gt; Tools/Scripts/webkitpy/common/host.py:81
&gt; +    def command_completed(self):
&gt; +        if self._irc:
&gt; +            self._irc.disconnect()

This probably needs a more semantic name like disconnect_from_irc

&gt; Tools/Scripts/webkitpy/tool/main.py:36
&gt; +from webkitpy.common.host import Host

Shouldn&apos;t this be alphabetized like everything else?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337936</commentid>
    <comment_count>4</comment_count>
      <attachid>79709</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-01-21 01:37:00 -0800</bug_when>
    <thetext>Created attachment 79709
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337987</commentid>
    <comment_count>5</comment_count>
      <attachid>79709</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-21 03:23:56 -0800</bug_when>
    <thetext>Comment on attachment 79709
Patch for landing

Clearing flags on attachment: 79709

Committed r76339: &lt;http://trac.webkit.org/changeset/76339&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337988</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-21 03:24:01 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78669</attachid>
            <date>2011-01-12 02:47:47 -0800</date>
            <delta_ts>2011-01-21 01:36:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52284-20110112024746.patch</filename>
            <type>text/plain</type>
            <size>8088</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA1OTFi
YmE2Yjk1ZDJjODdkNWMzOWI0ZmM2YzBjZGYyZWJjZjA4ZDA0Li5iMDMzNTM2MWY2YmJlYzBlNjcx
YjdkYThhOTU0ZTk1YzI1ZjdiMjg3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDEtMTIgIEVyaWMgU2VpZGVs
ICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFNwbGl0IEhvc3Qgb2JqZWN0IG9mZiBmcm9tIFdlYktpdFBhdGNoIGZvciBl
YXNpZXIgcmUtdXNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD01MjI4NAorCisgICAgICAgIG5ldy1ydW4td2Via2l0LXRlc3RzIGFuZCBvdGhlciB0b29s
cyBhcmUgZXZlbnR1YWxseSBnb2luZyB0byB3YW50IG9uZSBvZiB0aGVzZS4KKyAgICAgICAgQmFz
aWNhbGx5IHlvdSBuZWVkIHRvIGluaGVyaXQgZnJvbSB0aGlzIGNsYXNzIGlmIHlvdSB3YW50IHRv
IHByZXRlbmQgdG8gYmUgYQorICAgICAgICBzZWxmLnRvb2wgb2JqZWN0IGZvciBTdGVwcy9Db21t
YW5kcy4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2hvc3QucHk6IEFkZGVk
LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9tYWluLnB5OgorCiAyMDExLTAxLTEx
ICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1v
bi9ob3N0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vaG9zdC5weQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5iNWUyZDcxMjZkNTlhMjczYWIwNzJiNTVjODUyMzBkNzRmN2EzNGQ5Ci0tLSAvZGV2L251
bGwKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vaG9zdC5weQpAQCAtMCwwICsx
LDgxIEBACisjIENvcHlyaWdodCAoYykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorIyBDb3B5cmlnaHQgKGMpIDIwMDkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAqIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisjIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyMgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQorIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0
aW9uLgorIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFt
ZXMgb2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
KyMgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
CisjIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyMKKyMgQ29tbWFuZCBvYmplY3RzIGV4cGVjdCB0byBoYXZl
IGEgc2VsZi50b29sIHdoaWNoIHByb3ZpZGVzIHRoZXNlIGludGVyZmFjZXMuCisKK2Zyb20gd2Vi
a2l0cHkuY29tbW9uLmNoZWNrb3V0LmFwaSBpbXBvcnQgQ2hlY2tvdXQKK2Zyb20gd2Via2l0cHku
Y29tbW9uLmNoZWNrb3V0LnNjbSBpbXBvcnQgZGVmYXVsdF9zY20KK2Zyb20gd2Via2l0cHkuY29t
bW9uLmNvbmZpZy5wb3J0cyBpbXBvcnQgV2ViS2l0UG9ydAorZnJvbSB3ZWJraXRweS5jb21tb24u
bmV0IGltcG9ydCBidWd6aWxsYSwgYnVpbGRib3QsIGlyYywgc3RhdHVzc2VydmVyCitmcm9tIHdl
YmtpdHB5LmNvbW1vbi5zeXN0ZW0gaW1wb3J0IGV4ZWN1dGl2ZSwgZmlsZXN5c3RlbSwgcGxhdGZv
cm1pbmZvLCB1c2VyLCB3b3Jrc3BhY2UKK2Zyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzIGltcG9y
dCBwb3J0CisKKworY2xhc3MgSG9zdChvYmplY3QpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmKToK
KyAgICAgICAgc2VsZi5idWdzID0gYnVnemlsbGEuQnVnemlsbGEoKQorICAgICAgICBzZWxmLmJ1
aWxkYm90ID0gYnVpbGRib3QuQnVpbGRCb3QoKQorICAgICAgICBzZWxmLmV4ZWN1dGl2ZSA9IGV4
ZWN1dGl2ZS5FeGVjdXRpdmUoKQorICAgICAgICBzZWxmLl9pcmMgPSBOb25lCisgICAgICAgIHNl
bGYuZmlsZXN5c3RlbSA9IGZpbGVzeXN0ZW0uRmlsZVN5c3RlbSgpCisgICAgICAgIHNlbGYud29y
a3NwYWNlID0gd29ya3NwYWNlLldvcmtzcGFjZShzZWxmLmZpbGVzeXN0ZW0sIHNlbGYuZXhlY3V0
aXZlKQorICAgICAgICBzZWxmLl9wb3J0ID0gTm9uZQorICAgICAgICBzZWxmLnVzZXIgPSB1c2Vy
LlVzZXIoKQorICAgICAgICBzZWxmLl9zY20gPSBOb25lCisgICAgICAgIHNlbGYuX2NoZWNrb3V0
ID0gTm9uZQorICAgICAgICBzZWxmLnN0YXR1c19zZXJ2ZXIgPSBzdGF0dXNzZXJ2ZXIuU3RhdHVz
U2VydmVyKCkKKyAgICAgICAgc2VsZi5wb3J0X2ZhY3RvcnkgPSBwb3J0LmZhY3RvcnkKKyAgICAg
ICAgc2VsZi5wbGF0Zm9ybSA9IHBsYXRmb3JtaW5mby5QbGF0Zm9ybUluZm8oKQorCisgICAgZGVm
IF9pbml0aWFsaXplX3NjbShzZWxmLCBwYXRjaF9kaXJlY3Rvcmllcz1Ob25lKToKKyAgICAgICAg
c2VsZi5fc2NtID0gZGVmYXVsdF9zY20ocGF0Y2hfZGlyZWN0b3JpZXMpCisgICAgICAgIHNlbGYu
X2NoZWNrb3V0ID0gQ2hlY2tvdXQoc2VsZi5zY20oKSkKKworICAgIGRlZiBzY20oc2VsZik6Cisg
ICAgICAgIHJldHVybiBzZWxmLl9zY20KKworICAgIGRlZiBjaGVja291dChzZWxmKToKKyAgICAg
ICAgcmV0dXJuIHNlbGYuX2NoZWNrb3V0CisKKyAgICBkZWYgcG9ydChzZWxmKToKKyAgICAgICAg
cmV0dXJuIHNlbGYuX3BvcnQKKworICAgIGRlZiBlbnN1cmVfaXJjX2Nvbm5lY3RlZChzZWxmLCBp
cmNfZGVsZWdhdGUpOgorICAgICAgICBpZiBub3Qgc2VsZi5faXJjOgorICAgICAgICAgICAgc2Vs
Zi5faXJjID0gaXJjLmlyY3Byb3h5LklSQ1Byb3h5KGlyY19kZWxlZ2F0ZSkKKworICAgIGRlZiBp
cmMoc2VsZik6CisgICAgICAgICMgV2UgZG9uJ3QgYXV0b21hdGljYWxseSBjb25zdHJ1Y3QgSVJD
UHJveHkgaGVyZSBiZWNhdXNlIGNvbnN0cnVjdGluZworICAgICAgICAjIElSQ1Byb3h5IGFjdHVh
bGx5IGNvbm5lY3RzIHRvIElSQy4gIFdlIHdhbnQgY2xpZW50cyB0byBleHBsaWNpdGx5CisgICAg
ICAgICMgY29ubmVjdCB0byBJUkMuCisgICAgICAgIHJldHVybiBzZWxmLl9pcmMKKworICAgIGRl
ZiBjb21tYW5kX2NvbXBsZXRlZChzZWxmKToKKyAgICAgICAgaWYgc2VsZi5faXJjOgorICAgICAg
ICAgICAgc2VsZi5faXJjLmRpc2Nvbm5lY3QoKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL21haW4ucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5w
eQppbmRleCA3NmQ1YmVmYmVjMmY3NmE4NDM3ZjE5MGNkMjJjMzgzZmJiYTIxMTQ2Li45ZWFlMjc5
ZGE4MjZlNThhZDFjMTNkN2M1NjBkNzIwNzNkYWI1Zjg1IDEwMDc1NQotLS0gYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvbWFpbi5weQpAQCAtMzMsNiArMzMsOCBAQCBmcm9tIG9wdHBhcnNlIGltcG9ydCBtYWtlX29w
dGlvbgogaW1wb3J0IG9zCiBpbXBvcnQgdGhyZWFkaW5nCiAKK2Zyb20gd2Via2l0cHkuY29tbW9u
Lmhvc3QgaW1wb3J0IEhvc3QKKwogZnJvbSB3ZWJraXRweS5jb21tb24uY2hlY2tvdXQuYXBpIGlt
cG9ydCBDaGVja291dAogZnJvbSB3ZWJraXRweS5jb21tb24uY2hlY2tvdXQuc2NtIGltcG9ydCBk
ZWZhdWx0X3NjbQogZnJvbSB3ZWJraXRweS5jb21tb24uY29uZmlnLnBvcnRzIGltcG9ydCBXZWJL
aXRQb3J0CkBAIC00Niw3ICs0OCw3IEBAIGZyb20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0
b29sIGltcG9ydCBNdWx0aUNvbW1hbmRUb29sCiBpbXBvcnQgd2Via2l0cHkudG9vbC5jb21tYW5k
cyBhcyBjb21tYW5kcwogCiAKLWNsYXNzIFdlYktpdFBhdGNoKE11bHRpQ29tbWFuZFRvb2wpOgor
Y2xhc3MgV2ViS2l0UGF0Y2goTXVsdGlDb21tYW5kVG9vbCwgSG9zdCk6CiAgICAgZ2xvYmFsX29w
dGlvbnMgPSBbCiAgICAgICAgIG1ha2Vfb3B0aW9uKCItdiIsICItLXZlcmJvc2UiLCBhY3Rpb249
InN0b3JlX3RydWUiLCBkZXN0PSJ2ZXJib3NlIiwgZGVmYXVsdD1GYWxzZSwgaGVscD0iZW5hYmxl
IGFsbCBsb2dnaW5nIiksCiAgICAgICAgIG1ha2Vfb3B0aW9uKCItZCIsICItLWRpcmVjdG9yeSIs
IGFjdGlvbj0iYXBwZW5kIiwgZGVzdD0icGF0Y2hfZGlyZWN0b3JpZXMiLCBkZWZhdWx0PVtdLCBo
ZWxwPSJEaXJlY3RvcnkgdG8gbG9vayBhdCBmb3IgY2hhbmdlZCBmaWxlcyIpLApAQCAtNTksNTgg
KzYxLDE0IEBAIGNsYXNzIFdlYktpdFBhdGNoKE11bHRpQ29tbWFuZFRvb2wpOgogCiAgICAgZGVm
IF9faW5pdF9fKHNlbGYsIHBhdGgpOgogICAgICAgICBNdWx0aUNvbW1hbmRUb29sLl9faW5pdF9f
KHNlbGYpCisgICAgICAgIEhvc3QuX19pbml0X18oc2VsZikKIAogICAgICAgICBzZWxmLl9wYXRo
ID0gcGF0aAogICAgICAgICBzZWxmLndha2V1cF9ldmVudCA9IHRocmVhZGluZy5FdmVudCgpCi0g
ICAgICAgICMgRklYTUU6IEFsbCBvZiB0aGVzZSBzaGFyZWQgb2JqZWN0cyBzaG91bGQgbW92ZSBv
ZmYgb250byBhCi0gICAgICAgICMgc2VwYXJhdGUgIlRvb2wiIG9iamVjdC4gIFdlYktpdFBhdGNo
IHNob3VsZCBpbmhlcml0IGZyb20KLSAgICAgICAgIyAiVG9vbCIgYW5kIGFsbCB0aGVzZSBvYmpl
Y3RzIHNob3VsZCB1c2UgZ2V0dGVycy9zZXR0ZXJzIGluc3RlYWQgb2YKLSAgICAgICAgIyBtYW51
YWwgZ2V0dGVyIGZ1bmN0aW9ucyAoZS5nLiBzY20oKSkuCi0gICAgICAgIHNlbGYuYnVncyA9IEJ1
Z3ppbGxhKCkKLSAgICAgICAgc2VsZi5idWlsZGJvdCA9IEJ1aWxkQm90KCkKLSAgICAgICAgc2Vs
Zi5leGVjdXRpdmUgPSBleGVjdXRpdmUuRXhlY3V0aXZlKCkKLSAgICAgICAgc2VsZi5faXJjID0g
Tm9uZQotICAgICAgICBzZWxmLmZpbGVzeXN0ZW0gPSBmaWxlc3lzdGVtLkZpbGVTeXN0ZW0oKQot
ICAgICAgICBzZWxmLndvcmtzcGFjZSA9IHdvcmtzcGFjZS5Xb3Jrc3BhY2Uoc2VsZi5maWxlc3lz
dGVtLCBzZWxmLmV4ZWN1dGl2ZSkKLSAgICAgICAgc2VsZi5fcG9ydCA9IE5vbmUKLSAgICAgICAg
c2VsZi51c2VyID0gdXNlci5Vc2VyKCkKLSAgICAgICAgc2VsZi5fc2NtID0gTm9uZQotICAgICAg
ICBzZWxmLl9jaGVja291dCA9IE5vbmUKLSAgICAgICAgc2VsZi5zdGF0dXNfc2VydmVyID0gU3Rh
dHVzU2VydmVyKCkKLSAgICAgICAgc2VsZi5wb3J0X2ZhY3RvcnkgPSBwb3J0LmZhY3RvcnkKLSAg
ICAgICAgc2VsZi5wbGF0Zm9ybSA9IHBsYXRmb3JtaW5mby5QbGF0Zm9ybUluZm8oKQotCi0gICAg
ZGVmIHNjbShzZWxmKToKLSAgICAgICAgIyBMYXppbHkgaW5pdGlhbGl6ZSBTQ00gdG8gbm90IGVy
cm9yLW91dCBiZWZvcmUgY29tbWFuZCBsaW5lIHBhcnNpbmcgKG9yIHdoZW4gcnVubmluZyBub24t
c2NtIGNvbW1hbmRzKS4KLSAgICAgICAgaWYgbm90IHNlbGYuX3NjbToKLSAgICAgICAgICAgIHNl
bGYuX3NjbSA9IGRlZmF1bHRfc2NtKHNlbGYuX29wdGlvbnMucGF0Y2hfZGlyZWN0b3JpZXMpCi0g
ICAgICAgIHJldHVybiBzZWxmLl9zY20KLQotICAgIGRlZiBjaGVja291dChzZWxmKToKLSAgICAg
ICAgaWYgbm90IHNlbGYuX2NoZWNrb3V0OgotICAgICAgICAgICAgc2VsZi5fY2hlY2tvdXQgPSBD
aGVja291dChzZWxmLnNjbSgpKQotICAgICAgICByZXR1cm4gc2VsZi5fY2hlY2tvdXQKLQotICAg
IGRlZiBwb3J0KHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5fcG9ydAotCi0gICAgZGVmIGVu
c3VyZV9pcmNfY29ubmVjdGVkKHNlbGYsIGlyY19kZWxlZ2F0ZSk6Ci0gICAgICAgIGlmIG5vdCBz
ZWxmLl9pcmM6Ci0gICAgICAgICAgICBzZWxmLl9pcmMgPSBJUkNQcm94eShpcmNfZGVsZWdhdGUp
Ci0KLSAgICBkZWYgaXJjKHNlbGYpOgotICAgICAgICAjIFdlIGRvbid0IGF1dG9tYXRpY2FsbHkg
Y29uc3RydWN0IElSQ1Byb3h5IGhlcmUgYmVjYXVzZSBjb25zdHJ1Y3RpbmcKLSAgICAgICAgIyBJ
UkNQcm94eSBhY3R1YWxseSBjb25uZWN0cyB0byBJUkMuICBXZSB3YW50IGNsaWVudHMgdG8gZXhw
bGljaXRseQotICAgICAgICAjIGNvbm5lY3QgdG8gSVJDLgotICAgICAgICByZXR1cm4gc2VsZi5f
aXJjCiAKICAgICBkZWYgcGF0aChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuX3BhdGgKIAot
ICAgIGRlZiBjb21tYW5kX2NvbXBsZXRlZChzZWxmKToKLSAgICAgICAgaWYgc2VsZi5faXJjOgot
ICAgICAgICAgICAgc2VsZi5faXJjLmRpc2Nvbm5lY3QoKQotCiAgICAgZGVmIHNob3VsZF9zaG93
X2luX21haW5faGVscChzZWxmLCBjb21tYW5kKToKICAgICAgICAgaWYgbm90IGNvbW1hbmQuc2hv
d19pbl9tYWluX2hlbHA6CiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKQEAgLTEyMCw3ICs3OCw3
IEBAIGNsYXNzIFdlYktpdFBhdGNoKE11bHRpQ29tbWFuZFRvb2wpOgogCiAgICAgIyBGSVhNRTog
VGhpcyBtYXkgYmUgdW5uZWNlc3Nhcnkgc2luY2Ugd2UgcGFzcyBnbG9iYWwgb3B0aW9ucyB0byBh
bGwgY29tbWFuZHMgZHVyaW5nIGV4ZWN1dGUoKSBhcyB3ZWxsLgogICAgIGRlZiBoYW5kbGVfZ2xv
YmFsX29wdGlvbnMoc2VsZiwgb3B0aW9ucyk6Ci0gICAgICAgIHNlbGYuX29wdGlvbnMgPSBvcHRp
b25zCisgICAgICAgIHNlbGYuX2luaXRpYWxpemVfc2NtKG9wdGlvbnMucGF0Y2hfZGlyZWN0b3Jp
ZXMpCiAgICAgICAgIGlmIG9wdGlvbnMuZHJ5X3J1bjoKICAgICAgICAgICAgIHNlbGYuc2NtKCku
ZHJ5cnVuID0gVHJ1ZQogICAgICAgICAgICAgc2VsZi5idWdzLmRyeXJ1biA9IFRydWUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79709</attachid>
            <date>2011-01-21 01:37:00 -0800</date>
            <delta_ts>2011-01-21 03:23:56 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-52284-20110121013659.patch</filename>
            <type>text/plain</type>
            <size>8112</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiNzE2
NWExNGFhNTU5ZDcxMDQxM2M2NjUwNTFlZThiZWVkNzU4YzViLi5hODFmYjYxZGJmZTAwMzA3Mjdi
YzhhM2U4MjExZmRlY2E3OGJkNWM4IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIv
VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDEtMjEgIEVyaWMgU2VpZGVs
ICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCisK
KyAgICAgICAgU3BsaXQgSG9zdCBvYmplY3Qgb2ZmIGZyb20gV2ViS2l0UGF0Y2ggZm9yIGVhc2ll
ciByZS11c2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTUyMjg0CisKKyAgICAgICAgbmV3LXJ1bi13ZWJraXQtdGVzdHMgYW5kIG90aGVyIHRvb2xzIGFy
ZSBldmVudHVhbGx5IGdvaW5nIHRvIHdhbnQgb25lIG9mIHRoZXNlLgorICAgICAgICBCYXNpY2Fs
bHkgeW91IG5lZWQgdG8gaW5oZXJpdCBmcm9tIHRoaXMgY2xhc3MgaWYgeW91IHdhbnQgdG8gcHJl
dGVuZCB0byBiZSBhCisgICAgICAgIHNlbGYudG9vbCBvYmplY3QgZm9yIFN0ZXBzL0NvbW1hbmRz
LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vaG9zdC5weTogQWRkZWQuCisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL21haW4ucHk6CisKIDIwMTEtMDEtMjAgIERp
cmsgUHJhbmtlICA8ZHByYW5rZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
QWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2hv
c3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9ob3N0LnB5Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjhlYzI3MWU1NGU4ZmNhYTkwM2Q3YmZjZTZhODVhNzM3MDEzZWE4OTAKLS0tIC9kZXYvbnVsbAor
KysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9ob3N0LnB5CkBAIC0wLDAgKzEsODAg
QEAKKyMgQ29weXJpZ2h0IChjKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisjIENvcHlyaWdodCAoYykgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisj
CisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyMgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24u
CisjICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMKKyMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorCisKK2Zyb20gd2Via2l0cHkuY29tbW9uLmNoZWNrb3V0LmFwaSBp
bXBvcnQgQ2hlY2tvdXQKK2Zyb20gd2Via2l0cHkuY29tbW9uLmNoZWNrb3V0LnNjbSBpbXBvcnQg
ZGVmYXVsdF9zY20KK2Zyb20gd2Via2l0cHkuY29tbW9uLmNvbmZpZy5wb3J0cyBpbXBvcnQgV2Vi
S2l0UG9ydAorZnJvbSB3ZWJraXRweS5jb21tb24ubmV0IGltcG9ydCBidWd6aWxsYSwgYnVpbGRi
b3QsIGlyYywgc3RhdHVzc2VydmVyCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0gaW1wb3J0
IGV4ZWN1dGl2ZSwgZmlsZXN5c3RlbSwgcGxhdGZvcm1pbmZvLCB1c2VyLCB3b3Jrc3BhY2UKK2Zy
b20gd2Via2l0cHkubGF5b3V0X3Rlc3RzIGltcG9ydCBwb3J0CisKKworY2xhc3MgSG9zdChvYmpl
Y3QpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc2VsZi5idWdzID0gYnVnemls
bGEuQnVnemlsbGEoKQorICAgICAgICBzZWxmLmJ1aWxkYm90ID0gYnVpbGRib3QuQnVpbGRCb3Qo
KQorICAgICAgICBzZWxmLmV4ZWN1dGl2ZSA9IGV4ZWN1dGl2ZS5FeGVjdXRpdmUoKQorICAgICAg
ICBzZWxmLl9pcmMgPSBOb25lCisgICAgICAgIHNlbGYuZmlsZXN5c3RlbSA9IGZpbGVzeXN0ZW0u
RmlsZVN5c3RlbSgpCisgICAgICAgIHNlbGYud29ya3NwYWNlID0gd29ya3NwYWNlLldvcmtzcGFj
ZShzZWxmLmZpbGVzeXN0ZW0sIHNlbGYuZXhlY3V0aXZlKQorICAgICAgICBzZWxmLl9wb3J0ID0g
Tm9uZQorICAgICAgICBzZWxmLnVzZXIgPSB1c2VyLlVzZXIoKQorICAgICAgICBzZWxmLl9zY20g
PSBOb25lCisgICAgICAgIHNlbGYuX2NoZWNrb3V0ID0gTm9uZQorICAgICAgICBzZWxmLnN0YXR1
c19zZXJ2ZXIgPSBzdGF0dXNzZXJ2ZXIuU3RhdHVzU2VydmVyKCkKKyAgICAgICAgc2VsZi5wb3J0
X2ZhY3RvcnkgPSBwb3J0LmZhY3RvcnkKKyAgICAgICAgc2VsZi5wbGF0Zm9ybSA9IHBsYXRmb3Jt
aW5mby5QbGF0Zm9ybUluZm8oKQorCisgICAgZGVmIF9pbml0aWFsaXplX3NjbShzZWxmLCBwYXRj
aF9kaXJlY3Rvcmllcz1Ob25lKToKKyAgICAgICAgc2VsZi5fc2NtID0gZGVmYXVsdF9zY20ocGF0
Y2hfZGlyZWN0b3JpZXMpCisgICAgICAgIHNlbGYuX2NoZWNrb3V0ID0gQ2hlY2tvdXQoc2VsZi5z
Y20oKSkKKworICAgIGRlZiBzY20oc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl9zY20KKwor
ICAgIGRlZiBjaGVja291dChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX2NoZWNrb3V0CisK
KyAgICBkZWYgcG9ydChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX3BvcnQKKworICAgIGRl
ZiBlbnN1cmVfaXJjX2Nvbm5lY3RlZChzZWxmLCBpcmNfZGVsZWdhdGUpOgorICAgICAgICBpZiBu
b3Qgc2VsZi5faXJjOgorICAgICAgICAgICAgc2VsZi5faXJjID0gaXJjLmlyY3Byb3h5LklSQ1By
b3h5KGlyY19kZWxlZ2F0ZSkKKworICAgIGRlZiBpcmMoc2VsZik6CisgICAgICAgICMgV2UgZG9u
J3QgYXV0b21hdGljYWxseSBjb25zdHJ1Y3QgSVJDUHJveHkgaGVyZSBiZWNhdXNlIGNvbnN0cnVj
dGluZworICAgICAgICAjIElSQ1Byb3h5IGFjdHVhbGx5IGNvbm5lY3RzIHRvIElSQy4gIFdlIHdh
bnQgY2xpZW50cyB0byBleHBsaWNpdGx5CisgICAgICAgICMgY29ubmVjdCB0byBJUkMuCisgICAg
ICAgIHJldHVybiBzZWxmLl9pcmMKKworICAgIGRlZiBjb21tYW5kX2NvbXBsZXRlZChzZWxmKToK
KyAgICAgICAgaWYgc2VsZi5faXJjOgorICAgICAgICAgICAgc2VsZi5faXJjLmRpc2Nvbm5lY3Qo
KQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL21haW4ucHkgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weQppbmRleCA3NmQ1YmVmYmVjMmY3NmE4NDM3
ZjE5MGNkMjJjMzgzZmJiYTIxMTQ2Li42YjA3NjE1ODg3NWZkZjI0YmI0MzAzNWM2MGEwNTRiMDUw
YzgwMjZlIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weQor
KysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weQpAQCAtMzYsNiArMzYsNyBA
QCBpbXBvcnQgdGhyZWFkaW5nCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5jaGVja291dC5hcGkgaW1w
b3J0IENoZWNrb3V0CiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5jaGVja291dC5zY20gaW1wb3J0IGRl
ZmF1bHRfc2NtCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5jb25maWcucG9ydHMgaW1wb3J0IFdlYktp
dFBvcnQKK2Zyb20gd2Via2l0cHkuY29tbW9uLmhvc3QgaW1wb3J0IEhvc3QKIGZyb20gd2Via2l0
cHkuY29tbW9uLm5ldC5idWd6aWxsYSBpbXBvcnQgQnVnemlsbGEKIGZyb20gd2Via2l0cHkuY29t
bW9uLm5ldC5idWlsZGJvdCBpbXBvcnQgQnVpbGRCb3QKIGZyb20gd2Via2l0cHkuY29tbW9uLm5l
dC5pcmMuaXJjcHJveHkgaW1wb3J0IElSQ1Byb3h5CkBAIC00Niw3ICs0Nyw3IEBAIGZyb20gd2Vi
a2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBNdWx0aUNvbW1hbmRUb29sCiBpbXBv
cnQgd2Via2l0cHkudG9vbC5jb21tYW5kcyBhcyBjb21tYW5kcwogCiAKLWNsYXNzIFdlYktpdFBh
dGNoKE11bHRpQ29tbWFuZFRvb2wpOgorY2xhc3MgV2ViS2l0UGF0Y2goTXVsdGlDb21tYW5kVG9v
bCwgSG9zdCk6CiAgICAgZ2xvYmFsX29wdGlvbnMgPSBbCiAgICAgICAgIG1ha2Vfb3B0aW9uKCIt
diIsICItLXZlcmJvc2UiLCBhY3Rpb249InN0b3JlX3RydWUiLCBkZXN0PSJ2ZXJib3NlIiwgZGVm
YXVsdD1GYWxzZSwgaGVscD0iZW5hYmxlIGFsbCBsb2dnaW5nIiksCiAgICAgICAgIG1ha2Vfb3B0
aW9uKCItZCIsICItLWRpcmVjdG9yeSIsIGFjdGlvbj0iYXBwZW5kIiwgZGVzdD0icGF0Y2hfZGly
ZWN0b3JpZXMiLCBkZWZhdWx0PVtdLCBoZWxwPSJEaXJlY3RvcnkgdG8gbG9vayBhdCBmb3IgY2hh
bmdlZCBmaWxlcyIpLApAQCAtNTksNTggKzYwLDE0IEBAIGNsYXNzIFdlYktpdFBhdGNoKE11bHRp
Q29tbWFuZFRvb2wpOgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHBhdGgpOgogICAgICAgICBN
dWx0aUNvbW1hbmRUb29sLl9faW5pdF9fKHNlbGYpCisgICAgICAgIEhvc3QuX19pbml0X18oc2Vs
ZikKIAogICAgICAgICBzZWxmLl9wYXRoID0gcGF0aAogICAgICAgICBzZWxmLndha2V1cF9ldmVu
dCA9IHRocmVhZGluZy5FdmVudCgpCi0gICAgICAgICMgRklYTUU6IEFsbCBvZiB0aGVzZSBzaGFy
ZWQgb2JqZWN0cyBzaG91bGQgbW92ZSBvZmYgb250byBhCi0gICAgICAgICMgc2VwYXJhdGUgIlRv
b2wiIG9iamVjdC4gIFdlYktpdFBhdGNoIHNob3VsZCBpbmhlcml0IGZyb20KLSAgICAgICAgIyAi
VG9vbCIgYW5kIGFsbCB0aGVzZSBvYmplY3RzIHNob3VsZCB1c2UgZ2V0dGVycy9zZXR0ZXJzIGlu
c3RlYWQgb2YKLSAgICAgICAgIyBtYW51YWwgZ2V0dGVyIGZ1bmN0aW9ucyAoZS5nLiBzY20oKSku
Ci0gICAgICAgIHNlbGYuYnVncyA9IEJ1Z3ppbGxhKCkKLSAgICAgICAgc2VsZi5idWlsZGJvdCA9
IEJ1aWxkQm90KCkKLSAgICAgICAgc2VsZi5leGVjdXRpdmUgPSBleGVjdXRpdmUuRXhlY3V0aXZl
KCkKLSAgICAgICAgc2VsZi5faXJjID0gTm9uZQotICAgICAgICBzZWxmLmZpbGVzeXN0ZW0gPSBm
aWxlc3lzdGVtLkZpbGVTeXN0ZW0oKQotICAgICAgICBzZWxmLndvcmtzcGFjZSA9IHdvcmtzcGFj
ZS5Xb3Jrc3BhY2Uoc2VsZi5maWxlc3lzdGVtLCBzZWxmLmV4ZWN1dGl2ZSkKLSAgICAgICAgc2Vs
Zi5fcG9ydCA9IE5vbmUKLSAgICAgICAgc2VsZi51c2VyID0gdXNlci5Vc2VyKCkKLSAgICAgICAg
c2VsZi5fc2NtID0gTm9uZQotICAgICAgICBzZWxmLl9jaGVja291dCA9IE5vbmUKLSAgICAgICAg
c2VsZi5zdGF0dXNfc2VydmVyID0gU3RhdHVzU2VydmVyKCkKLSAgICAgICAgc2VsZi5wb3J0X2Zh
Y3RvcnkgPSBwb3J0LmZhY3RvcnkKLSAgICAgICAgc2VsZi5wbGF0Zm9ybSA9IHBsYXRmb3JtaW5m
by5QbGF0Zm9ybUluZm8oKQotCi0gICAgZGVmIHNjbShzZWxmKToKLSAgICAgICAgIyBMYXppbHkg
aW5pdGlhbGl6ZSBTQ00gdG8gbm90IGVycm9yLW91dCBiZWZvcmUgY29tbWFuZCBsaW5lIHBhcnNp
bmcgKG9yIHdoZW4gcnVubmluZyBub24tc2NtIGNvbW1hbmRzKS4KLSAgICAgICAgaWYgbm90IHNl
bGYuX3NjbToKLSAgICAgICAgICAgIHNlbGYuX3NjbSA9IGRlZmF1bHRfc2NtKHNlbGYuX29wdGlv
bnMucGF0Y2hfZGlyZWN0b3JpZXMpCi0gICAgICAgIHJldHVybiBzZWxmLl9zY20KLQotICAgIGRl
ZiBjaGVja291dChzZWxmKToKLSAgICAgICAgaWYgbm90IHNlbGYuX2NoZWNrb3V0OgotICAgICAg
ICAgICAgc2VsZi5fY2hlY2tvdXQgPSBDaGVja291dChzZWxmLnNjbSgpKQotICAgICAgICByZXR1
cm4gc2VsZi5fY2hlY2tvdXQKLQotICAgIGRlZiBwb3J0KHNlbGYpOgotICAgICAgICByZXR1cm4g
c2VsZi5fcG9ydAotCi0gICAgZGVmIGVuc3VyZV9pcmNfY29ubmVjdGVkKHNlbGYsIGlyY19kZWxl
Z2F0ZSk6Ci0gICAgICAgIGlmIG5vdCBzZWxmLl9pcmM6Ci0gICAgICAgICAgICBzZWxmLl9pcmMg
PSBJUkNQcm94eShpcmNfZGVsZWdhdGUpCi0KLSAgICBkZWYgaXJjKHNlbGYpOgotICAgICAgICAj
IFdlIGRvbid0IGF1dG9tYXRpY2FsbHkgY29uc3RydWN0IElSQ1Byb3h5IGhlcmUgYmVjYXVzZSBj
b25zdHJ1Y3RpbmcKLSAgICAgICAgIyBJUkNQcm94eSBhY3R1YWxseSBjb25uZWN0cyB0byBJUkMu
ICBXZSB3YW50IGNsaWVudHMgdG8gZXhwbGljaXRseQotICAgICAgICAjIGNvbm5lY3QgdG8gSVJD
LgotICAgICAgICByZXR1cm4gc2VsZi5faXJjCiAKICAgICBkZWYgcGF0aChzZWxmKToKICAgICAg
ICAgcmV0dXJuIHNlbGYuX3BhdGgKIAotICAgIGRlZiBjb21tYW5kX2NvbXBsZXRlZChzZWxmKToK
LSAgICAgICAgaWYgc2VsZi5faXJjOgotICAgICAgICAgICAgc2VsZi5faXJjLmRpc2Nvbm5lY3Qo
KQotCiAgICAgZGVmIHNob3VsZF9zaG93X2luX21haW5faGVscChzZWxmLCBjb21tYW5kKToKICAg
ICAgICAgaWYgbm90IGNvbW1hbmQuc2hvd19pbl9tYWluX2hlbHA6CiAgICAgICAgICAgICByZXR1
cm4gRmFsc2UKQEAgLTEyMCw3ICs3Nyw3IEBAIGNsYXNzIFdlYktpdFBhdGNoKE11bHRpQ29tbWFu
ZFRvb2wpOgogCiAgICAgIyBGSVhNRTogVGhpcyBtYXkgYmUgdW5uZWNlc3Nhcnkgc2luY2Ugd2Ug
cGFzcyBnbG9iYWwgb3B0aW9ucyB0byBhbGwgY29tbWFuZHMgZHVyaW5nIGV4ZWN1dGUoKSBhcyB3
ZWxsLgogICAgIGRlZiBoYW5kbGVfZ2xvYmFsX29wdGlvbnMoc2VsZiwgb3B0aW9ucyk6Ci0gICAg
ICAgIHNlbGYuX29wdGlvbnMgPSBvcHRpb25zCisgICAgICAgIHNlbGYuX2luaXRpYWxpemVfc2Nt
KG9wdGlvbnMucGF0Y2hfZGlyZWN0b3JpZXMpCiAgICAgICAgIGlmIG9wdGlvbnMuZHJ5X3J1bjoK
ICAgICAgICAgICAgIHNlbGYuc2NtKCkuZHJ5cnVuID0gVHJ1ZQogICAgICAgICAgICAgc2VsZi5i
dWdzLmRyeXJ1biA9IFRydWUK
</data>

          </attachment>
      

    </bug>

</bugzilla>