<?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>81874</bug_id>
          
          <creation_ts>2012-03-21 22:34:42 -0700</creation_ts>
          <short_desc>[BlackBerry] Synchronize platform/network/blackberry</short_desc>
          <delta_ts>2012-03-22 19:20:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit BlackBerry</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Other</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>0</everconfirmed>
          <reporter name="Jason Liu">jasonliuwebkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>charles.wei</cc>
    
    <cc>leo.yang</cc>
    
    <cc>rwlbuis</cc>
    
    <cc>staikos</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>584986</commentid>
    <comment_count>0</comment_count>
    <who name="Jason Liu">jasonliuwebkit</who>
    <bug_when>2012-03-21 22:34:42 -0700</bug_when>
    <thetext>Upstream the changed codes of network to make further work easy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585002</commentid>
    <comment_count>1</comment_count>
      <attachid>133195</attachid>
    <who name="Jason Liu">jasonliuwebkit</who>
    <bug_when>2012-03-21 23:23:45 -0700</bug_when>
    <thetext>Created attachment 133195
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585053</commentid>
    <comment_count>2</comment_count>
      <attachid>133203</attachid>
    <who name="Jason Liu">jasonliuwebkit</who>
    <bug_when>2012-03-22 01:09:50 -0700</bug_when>
    <thetext>Created attachment 133203
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585983</commentid>
    <comment_count>3</comment_count>
      <attachid>133203</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-03-22 19:08:28 -0700</bug_when>
    <thetext>Comment on attachment 133203
Patch

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

Looks good.

&gt; Source/WebCore/platform/network/blackberry/NetworkJob.cpp:405
&gt; +            WTF::String urlFilename = m_response.url().lastPathComponent();

WTF:: can be removed in a big follow-up cleanup patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585993</commentid>
    <comment_count>4</comment_count>
      <attachid>133203</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-22 19:20:06 -0700</bug_when>
    <thetext>Comment on attachment 133203
Patch

Clearing flags on attachment: 133203

Committed r111809: &lt;http://trac.webkit.org/changeset/111809&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585994</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-22 19:20:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133195</attachid>
            <date>2012-03-21 23:23:45 -0700</date>
            <delta_ts>2012-03-22 01:09:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81874-20120322142343.patch</filename>
            <type>text/plain</type>
            <size>14377</size>
            <attacher name="Jason Liu">jasonliuwebkit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDVhYzRkYWJiYTMyYzQ2
NGFlNTUyM2NlZjdjNTNiYjBlYzNmOWM5Mi4uMzdlZTM3MzIxMzI1MjJmYWQzNGY3YTNhZTA5NmUy
ZTJiM2E3NTJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTAzLTIxICBKYXNv
biBMaXUgIDxqYXNvbi5saXVAdG9yY2htb2JpbGUuY29tLmNuPgorCisgICAgICAgIFtCbGFja0Jl
cnJ5XSBTeW5jaHJvbml6ZSBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxODc0CisgICAgICAgIAorICAg
ICAgICBXZSBjaGFuZ2VkIGEgbG90IGluIHRoZXNlIGZpbGVzIGxvY2FsbHkuIEJ1dCB0aGUgY2hh
bmdlcyBhcmUgbm90IHVwc3RyZWFtZWQuCisgICAgICAgIEl0IGlzIG5vdCBjb252ZW5pZW50IHRv
IGRvIHRoZSBvdGhlciB1cHN0cmVhbWluZyB3b3JrIGJhc2VkIG9uIHRoZXNlIGRpZmZlcmVuY2Vz
LgorICAgICAgICBTbyB1cHN0cmVhbSB0aGVzZSBjaGFuZ2VzLgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gSnVzdCBzeW5jaHJv
bml6ZSBjb2Rlcy4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3
b3JrSm9iLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtKb2I6Ok5ldHdvcmtKb2IpOgor
ICAgICAgICAoV2ViQ29yZTo6TmV0d29ya0pvYjo6aW5pdGlhbGl6ZSk6CisgICAgICAgIChXZWJD
b3JlOjpOZXR3b3JrSm9iOjpoYW5kbGVOb3RpZnlIZWFkZXJSZWNlaXZlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpOZXR3b3JrSm9iOjpoYW5kbGVOb3RpZnlEYXRhUmVjZWl2ZWQpOgorICAgICAgICAo
V2ViQ29yZTo6TmV0d29ya0pvYjo6c2VuZFJlc3BvbnNlSWZOZWVkZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6TmV0d29ya0pvYjo6c2VuZFJlcXVlc3RXaXRoQ3JlZGVudGlhbHMpOgorICAgICAgICAo
V2ViQ29yZTo6TmV0d29ya0pvYjo6aGFuZGxlQWJvdXQpOgorICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmg6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3Jr
Sm9iOjppc0Vycm9yKToKKyAgICAgICAgKE5ldHdvcmtKb2IpOgorICAgICAgICAqIHBsYXRmb3Jt
L25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpOZXR3b3JrTWFuYWdlcjo6c3RhcnRKb2IpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
YmxhY2tiZXJyeS9SZXNvdXJjZVJlcXVlc3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdDo6UmVzb3VyY2VSZXF1ZXN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvUmVzb3VyY2VSZXF1ZXN0QmxhY2tCZXJyeS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpwbGF0Zm9ybVRhcmdldFR5cGVGb3JSZXF1ZXN0KToKKwogMjAxMi0wMy0yMSAgRW1pbCBBIEVr
bHVuZCAgPGVhZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBjaGFuZ2UgdG91
Y2hpbmcgQ3VzdG9tRmlsdGVyUHJvZ3JhbS5oIHRvIHRyeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2IuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2IuY3BwCmluZGV4
IGM3MzcwODEzZjEzZDNkYmJjZDA1MDdjOTIwNWEzYTVjMDAyZmFiNDMuLmRlM2EyMWRiNGE4ZTc2
MjU3ODY3MTFkYjBhOGIyYjAxYWEyNDBjMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0d29ya0pvYi5jcHAKQEAgLTIxLDgg
KzIxLDYgQEAKIAogI2luY2x1ZGUgIkFib3V0RGF0YS5oIgogI2luY2x1ZGUgIkJhc2U2NC5oIgot
I2luY2x1ZGUgIkNocm9tZS5oIgotI2luY2x1ZGUgIkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUg
IkNvb2tpZU1hbmFnZXIuaCIKICNpbmNsdWRlICJDcmVkZW50aWFsU3RvcmFnZS5oIgogI2luY2x1
ZGUgIkZyYW1lLmgiCkBAIC0zMiw3ICszMCw2IEBACiAjaW5jbHVkZSAiTUlNRVNuaWZmaW5nLmgi
CiAjaW5jbHVkZSAiTUlNRVR5cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIk5ldHdvcmtNYW5hZ2Vy
LmgiCi0jaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xpZW50Lmgi
CiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVJbnRlcm5hbC5oIgogI2luY2x1ZGUgIlJlc291cmNl
UmVxdWVzdC5oIgpAQCAtMTA5LDcgKzEwNiw2IEBAIE5ldHdvcmtKb2I6Ok5ldHdvcmtKb2IoKQog
ICAgICwgbV9kYXRhUmVjZWl2ZWQoZmFsc2UpCiAgICAgLCBtX3Jlc3BvbnNlU2VudChmYWxzZSkK
ICAgICAsIG1fY2FsbGluZ0NsaWVudChmYWxzZSkKLSAgICAsIG1faXNYSFIoZmFsc2UpCiAgICAg
LCBtX25lZWRzUmV0cnlBc0ZUUERpcmVjdG9yeShmYWxzZSkKICAgICAsIG1faXNPdmVycmlkZUNv
bnRlbnRUeXBlKGZhbHNlKQogICAgICwgbV9leHRlbmRlZFN0YXR1c0NvZGUoMCkKQEAgLTE3MCw4
ICsxNjYsNiBAQCBib29sIE5ldHdvcmtKb2I6OmluaXRpYWxpemUoaW50IHBsYXllcklkLAogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgc2V0V3JhcHBlZFN0cmVhbSh3cmFwcGVkU3RyZWFtKTsK
IAotICAgIG1faXNYSFIgPSByZXF1ZXN0LmdldFRhcmdldFR5cGUoKSA9PSBCbGFja0JlcnJ5OjpQ
bGF0Zm9ybTo6TmV0d29ya1JlcXVlc3Q6OlRhcmdldElzWE1MSFRUUFJlcXVlc3Q7Ci0KICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIApAQCAtMzEwLDcgKzMwNCwxMSBAQCB2b2lkIE5ldHdvcmtKb2I6Omhh
bmRsZU5vdGlmeUhlYWRlclJlY2VpdmVkKGNvbnN0IFN0cmluZyYga2V5LCBjb25zdCBTdHJpbmcm
IHZhbAogICAgICAgICBtX2NvbnRlbnREaXNwb3NpdGlvbiA9IHZhbHVlOwogCiAgICAgaWYgKGxv
d2VyS2V5ID09ICJzZXQtY29va2llIikgewotICAgICAgICBpZiAobV9mcmFtZSAmJiBtX2ZyYW1l
LT5sb2FkZXIoKSAmJiBtX2ZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCkKKyAgICAgICAgLy8gRklY
TUU6IElmIGEgdGFiIGlzIGNsb3NlZCwgc29tZXRpbWVzIG5ldHdvcmsgZGF0YSB3aWxsIGNvbWUg
aW4gYWZ0ZXIgdGhlIGZyYW1lIGhhcyBiZWVuIGRldGFjaGVkIGZyb20gaXRzIHBhZ2UgYnV0IGJl
Zm9yZSBpdCBpcyBkZWxldGVkLgorICAgICAgICAvLyBJZiB0aGlzIGhhcHBlbnMsIG1fZnJhbWUt
PnBhZ2UoKSB3aWxsIHJldHVybiAwLCBhbmQgbV9mcmFtZS0+bG9hZGVyKCktPmNsaWVudCgpIHdp
bGwgYmUgaW4gYSBiYWQgc3RhdGUgYW5kIGNhbGxpbmcgaW50byBpdCB3aWxsIGNyYXNoLgorICAg
ICAgICAvLyBGb3Igbm93IHdlIGNoZWNrIGZvciB0aGlzIGV4cGxpY2l0bHkgYnkgY2hlY2tpbmcg
bV9mcmFtZS0+cGFnZSgpLiBCdXQgd2Ugc2hvdWxkIGZpbmQgb3V0IHdoeSB0aGUgbmV0d29yayBq
b2IgaGFzbid0IGJlZW4gY2FuY2VsbGVkIHdoZW4gdGhlIGZyYW1lIHdhcyBkZXRhY2hlZC4KKyAg
ICAgICAgLy8gU2VlIFJJTSBQUiAxMzQyMDcKKyAgICAgICAgaWYgKG1fZnJhbWUgJiYgbV9mcmFt
ZS0+cGFnZSgpICYmIG1fZnJhbWUtPmxvYWRlcigpICYmIG1fZnJhbWUtPmxvYWRlcigpLT5jbGll
bnQoKQogICAgICAgICAgICAgJiYgc3RhdGljX2Nhc3Q8RnJhbWVMb2FkZXJDbGllbnRCbGFja0Jl
cnJ5Kj4obV9mcmFtZS0+bG9hZGVyKCktPmNsaWVudCgpKS0+Y29va2llc0VuYWJsZWQoKSkKICAg
ICAgICAgICAgIGhhbmRsZVNldENvb2tpZUhlYWRlcih2YWx1ZSk7CiAgICAgfQpAQCAtNDAxLDcg
KzM5OSw3IEBAIHZvaWQgTmV0d29ya0pvYjo6aGFuZGxlTm90aWZ5RGF0YVJlY2VpdmVkKGNvbnN0
IGNoYXIqIGJ1Ziwgc2l6ZV90IGxlbikKICAgICAgICAgLy8gaXMgb24gYSBmaWxlIHN5c3RlbSBp
ZiBpdCBoYXMgYSBNSU1FIG1hcHBhYmxlIGZpbGUgZXh0ZW5zaW9uLgogICAgICAgICAvLyBUaGUg
ZmlsZSBleHRlbnNpb24gaXMgbGlrZWx5IHRvIGJlIGNvcnJlY3QuCiAgICAgICAgIGlmIChtX2lz
RmlsZSkgewotICAgICAgICAgICAgU3RyaW5nIHVybEZpbGVuYW1lID0gbV9yZXNwb25zZS51cmwo
KS5sYXN0UGF0aENvbXBvbmVudCgpOworICAgICAgICAgICAgV1RGOjpTdHJpbmcgdXJsRmlsZW5h
bWUgPSBtX3Jlc3BvbnNlLnVybCgpLmxhc3RQYXRoQ29tcG9uZW50KCk7CiAgICAgICAgICAgICBz
aXplX3QgcG9zID0gdXJsRmlsZW5hbWUucmV2ZXJzZUZpbmQoJy4nKTsKICAgICAgICAgICAgIGlm
IChwb3MgIT0gV1RGOjpub3RGb3VuZCkgewogICAgICAgICAgICAgICAgIFN0cmluZyBleHRlbnNp
b24gPSB1cmxGaWxlbmFtZS5zdWJzdHJpbmcocG9zICsgMSk7CkBAIC02NTksOCArNjU3LDggQEAg
dm9pZCBOZXR3b3JrSm9iOjpzZW5kUmVzcG9uc2VJZk5lZWRlZCgpCiAgICAgICAgIG1fcmVzcG9u
c2Uuc2V0U3VnZ2VzdGVkRmlsZW5hbWUoc3VnZ2VzdGVkRmlsZW5hbWUpOwogICAgIH0KIAotICAg
IC8vIE1ha2Ugc3VyZSBsb2NhbCBmaWxlcyBhcmVuJ3QgY2FjaGVkLCBzaW5jZSB0aGlzIGp1c3Qg
ZHVwbGljYXRlcyB0aGVtLgotICAgIGlmIChtX2lzRmlsZSB8fCBtX2lzRGF0YSB8fCBtX2lzQWJv
dXQpCisgICAgLy8gRG9uJ3QgY2FjaGUgcmVzb3VyY2VzIGZvciAiYWJvdXQ6IgorICAgIGlmICht
X2lzQWJvdXQpCiAgICAgICAgIG1fcmVzcG9uc2Uuc2V0SFRUUEhlYWRlckZpZWxkKCJDYWNoZS1D
b250cm9sIiwgIm5vLWNhY2hlIik7CiAKICAgICBpZiAoaXNDbGllbnRBdmFpbGFibGUoKSkgewpA
QCAtODcxLDExICs4NjksOCBAQCBib29sIE5ldHdvcmtKb2I6OnNlbmRSZXF1ZXN0V2l0aENyZWRl
bnRpYWxzKFByb3RlY3Rpb25TcGFjZVNlcnZlclR5cGUgdHlwZSwgUHJvdAogICAgICAgICAgICAg
Ly8gSWYgdGhleSBhcmUgY29ycmVjdCwgdGhleSB3aWxsIHRoZSBwdXQgaW50byBDcmVkZW50aWFs
U3RvcmFnZS4KICAgICAgICAgICAgIG1faGFuZGxlLT5nZXRJbnRlcm5hbCgpLT5tX3VzZXIgPSAi
IjsKICAgICAgICAgICAgIG1faGFuZGxlLT5nZXRJbnRlcm5hbCgpLT5tX3Bhc3MgPSAiIjsKLSAg
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIENyZWRlbnRpYWwgaW5wdXRDcmVkZW50aWFsID0g
bV9mcmFtZS0+cGFnZSgpLT5jaHJvbWUoKS0+Y2xpZW50KCktPnBsYXRmb3JtUGFnZUNsaWVudCgp
LT5hdXRoZW50aWNhdGlvbkNoYWxsZW5nZShuZXdVUkwsIHByb3RlY3Rpb25TcGFjZSk7Ci0gICAg
ICAgICAgICB1c2VybmFtZSA9IGlucHV0Q3JlZGVudGlhbC51c2VyKCk7Ci0gICAgICAgICAgICBw
YXNzd29yZCA9IGlucHV0Q3JlZGVudGlhbC5wYXNzd29yZCgpOwotICAgICAgICB9CisgICAgICAg
IH0gZWxzZQorICAgICAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCktPmNsaWVudCgpLT5hdXRoZW50
aWNhdGlvbkNoYWxsZW5nZShyZWFsbSwgdXNlcm5hbWUsIHBhc3N3b3JkKTsKIAogICAgICAgICBp
ZiAodXNlcm5hbWUuaXNFbXB0eSgpICYmIHBhc3N3b3JkLmlzRW1wdHkoKSkKICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKQEAgLTk0MSw3ICs5MzYsNyBAQCB2b2lkIE5ldHdvcmtKb2I6OmhhbmRs
ZUFib3V0KCkKICAgICBTdHJpbmcgcmVzdWx0OwogCiAgICAgYm9vbCBoYW5kbGVkID0gZmFsc2U7
Ci0gICAgaWYgKGFib3V0V2hhdC5pc0VtcHR5KCkgfHwgZXF1YWxJZ25vcmluZ0Nhc2UoYWJvdXRX
aGF0LCAiYmxhbmsiKSkgeworICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShhYm91dFdoYXQsICJi
bGFuayIpKSB7CiAgICAgICAgIGhhbmRsZWQgPSB0cnVlOwogICAgIH0gZWxzZSBpZiAoZXF1YWxJ
Z25vcmluZ0Nhc2UoYWJvdXRXaGF0LCAiY3JlZGl0cyIpKSB7CiAgICAgICAgIHJlc3VsdC5hcHBl
bmQoU3RyaW5nKCI8aHRtbD48aGVhZD48dGl0bGU+T3BlbiBTb3VyY2UgQ3JlZGl0czwvdGl0bGU+
IDxzdHlsZT4gLmFib3V0IHtwYWRkaW5nOjE0cHg7fSA8L3N0eWxlPiA8bWV0YSBuYW1lPVwidmll
d3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoLCB1c2VyLXNjYWxhYmxlPW5vXCI+
PC9oZWFkPjxib2R5PiIpKTsKQEAgLTEwMTIsMTAgKzEwMDcsOSBAQCB2b2lkIE5ldHdvcmtKb2I6
OmhhbmRsZUFib3V0KCkKICAgICAgICAgaGFuZGxlZCA9IHRydWU7CiAjZW5kaWYKICAgICB9Ci0K
ICAgICBpZiAoaGFuZGxlZCkgewogICAgICAgICBDU3RyaW5nIHJlc3VsdFN0cmluZyA9IHJlc3Vs
dC51dGY4KCk7Ci0gICAgICAgIG5vdGlmeVN0YXR1c1JlY2VpdmVkKDQwNCwgMCk7CisgICAgICAg
IG5vdGlmeVN0YXR1c1JlY2VpdmVkKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpGaWx0ZXJTdHJlYW06
OlN0YXR1c1N1Y2Nlc3MsIDApOwogICAgICAgICBub3RpZnlTdHJpbmdIZWFkZXJSZWNlaXZlZCgi
Q29udGVudC1MZW5ndGgiLCBTdHJpbmc6Om51bWJlcihyZXN1bHRTdHJpbmcubGVuZ3RoKCkpKTsK
ICAgICAgICAgbm90aWZ5U3RyaW5nSGVhZGVyUmVjZWl2ZWQoIkNvbnRlbnQtVHlwZSIsICJ0ZXh0
L2h0bWwiKTsKICAgICAgICAgbm90aWZ5RGF0YVJlY2VpdmVkUGxhaW4ocmVzdWx0U3RyaW5nLmRh
dGEoKSwgcmVzdWx0U3RyaW5nLmxlbmd0aCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0d29ya0pvYi5oCmluZGV4IDU4NmI0NWY0
YmMzYjJjZDUxMDZkNGViYzc4OTgzMWViMGEzMDYxZWEuLjM3MTBmYWE0Yjg2ZjA3ODRmOTVhMzc1
ZTY0NzE1OWYwYmFjYTI2ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2IuaApAQCAtMTQ1LDcgKzE0NSw3IEBAIHBy
aXZhdGU6CiAKICAgICBib29sIGlzRXJyb3IoaW50IHN0YXR1c0NvZGUpCiAgICAgewotICAgICAg
ICByZXR1cm4gc3RhdHVzQ29kZSA8IDAgfHwgKCFtX2lzWEhSICYmICg0MDAgPD0gc3RhdHVzQ29k
ZSAmJiBzdGF0dXNDb2RlIDwgNjAwKSk7CisgICAgICAgIHJldHVybiBzdGF0dXNDb2RlIDwgMCB8
fCAoNDAwIDw9IHN0YXR1c0NvZGUgJiYgc3RhdHVzQ29kZSA8IDYwMCk7CiAgICAgfQogCiBwcml2
YXRlOgpAQCAtMTc0LDcgKzE3NCw2IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2RhdGFSZWNlaXZl
ZDsKICAgICBib29sIG1fcmVzcG9uc2VTZW50OwogICAgIGJvb2wgbV9jYWxsaW5nQ2xpZW50Owot
ICAgIGJvb2wgbV9pc1hIUjsgLy8gRklYTUUgLSBBZnRlciA3LjAsIHJlbW92ZSB0aGlzLiBPbmx5
IHRoZSBRdCBwb3J0IHJlcG9ydHMgSFRUUCBlcnJvciBzdGF0dXNlcyBhcyBkaWRGYWlscywgc28g
d2UgcHJvYmFibHkgc2hvdWxkbid0LgogICAgIGJvb2wgbV9uZWVkc1JldHJ5QXNGVFBEaXJlY3Rv
cnk7CiAgICAgYm9vbCBtX2lzT3ZlcnJpZGVDb250ZW50VHlwZTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtNYW5hZ2VyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrTWFu
YWdlci5jcHAKaW5kZXggZTM4MzJlOTMzZjkzMGFmODY4ZGFlNTY1ZmQ3NjlhYzBmZDZkYTk3Yi4u
NTgzNzg2YmQxZTdmZWViNmMzNWYzODczYjk2OGFlMjkwYzM2ZTg2MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtNYW5hZ2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0d29y
a01hbmFnZXIuY3BwCkBAIC0yOCw2ICsyOCwxMCBAQAogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxl
SW50ZXJuYWwuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKIAorI2luY2x1ZGUgPEJs
YWNrQmVycnlQbGF0Zm9ybUNsaWVudC5oPgorI2luY2x1ZGUgPEJsYWNrQmVycnlQbGF0Zm9ybUxv
Zy5oPgorI2luY2x1ZGUgPEJ1aWxkSW5mb3JtYXRpb24uaD4KKyNpbmNsdWRlIDxuZXR3b3JrL0Zp
bHRlclN0cmVhbS5oPgogI2luY2x1ZGUgPG5ldHdvcmsvTmV0d29ya1JlcXVlc3QuaD4KIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewpAQCAtMTA4LDcgKzExMiw3IEBAIGJvb2wgTmV0d29ya01hbmFnZXI6
OnN0YXJ0Sm9iKGludCBwbGF5ZXJJZCwgY29uc3QgU3RyaW5nJiBwYWdlR3JvdXBOYW1lLCBQYXNz
UmVmCiAKICAgICAgICAgaWYgKGF1dGhUeXBlICE9IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpOZXR3
b3JrUmVxdWVzdDo6QXV0aE5vbmUpCiAgICAgICAgICAgICBwbGF0Zm9ybVJlcXVlc3Quc2V0Q3Jl
ZGVudGlhbHModXNlcm5hbWUudXRmOCgpLmRhdGEoKSwgcGFzc3dvcmQudXRmOCgpLmRhdGEoKSwg
YXV0aFR5cGUpOwotICAgIH0gZWxzZSBpZiAodXJsLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkg
eworICAgIH0gZWxzZSBpZiAodXJsLnByb3RvY29sSW5IVFRQRmFtaWx5KCkpIHsKICAgICAgICAg
Ly8gRm9yIFVSTHMgdGhhdCBtYXRjaCB0aGUgcGF0aHMgb2YgdGhvc2UgcHJldmlvdXNseSBjaGFs
bGVuZ2VkIGZvciBIVFRQIEJhc2ljIGF1dGhlbnRpY2F0aW9uLAogICAgICAgICAvLyB0cnkgYW5k
IHJldXNlIHRoZSBjcmVkZW50aWFsIHByZWVtcHRpdmVseSwgYXMgYWxsb3dlZCBieSBSRkMgMjYx
Ny4KICAgICAgICAgQ3JlZGVudGlhbCBjcmVkZW50aWFsID0gQ3JlZGVudGlhbFN0b3JhZ2U6Omdl
dCh1cmwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFj
a2JlcnJ5L1Jlc291cmNlUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9ibGFja2JlcnJ5L1Jlc291cmNlUmVxdWVzdC5oCmluZGV4IGFkMTkxZmY4NDIzZTM3OGFmMDBk
YzhlN2VjMDQ1N2JmN2Y2YzA4YWUuLjNiOGE0Nzk4MmNkMTBiZTc0Y2Y3ZmZhOGVkMjJmNTdjOGUx
OWI3ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2ti
ZXJyeS9SZXNvdXJjZVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL2JsYWNrYmVycnkvUmVzb3VyY2VSZXF1ZXN0LmgKQEAgLTU3LDYgKzU3LDcgQEAgcHVibGlj
OgogICAgICAgICAsIG1fbXVzdEhhbmRsZUludGVybmFsbHkoZmFsc2UpCiAgICAgICAgICwgbV9p
c1JlcXVlc3RlZEJ5UGx1Z2luKGZhbHNlKQogICAgICAgICAsIG1fZm9yY2VEb3dubG9hZChmYWxz
ZSkKKyAgICAgICAgLCBtX3RhcmdldFR5cGUoVGFyZ2V0SXNVbnNwZWNpZmllZCkKICAgICB7CiAg
ICAgfQogCkBAIC02Niw2ICs2Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgLCBtX211c3RIYW5kbGVJ
bnRlcm5hbGx5KGZhbHNlKQogICAgICAgICAsIG1faXNSZXF1ZXN0ZWRCeVBsdWdpbihmYWxzZSkK
ICAgICAgICAgLCBtX2ZvcmNlRG93bmxvYWQoZmFsc2UpCisgICAgICAgICwgbV90YXJnZXRUeXBl
KFRhcmdldElzVW5zcGVjaWZpZWQpCiAgICAgewogICAgIH0KIApAQCAtNzUsNiArNzcsNyBAQCBw
dWJsaWM6CiAgICAgICAgICwgbV9tdXN0SGFuZGxlSW50ZXJuYWxseShmYWxzZSkKICAgICAgICAg
LCBtX2lzUmVxdWVzdGVkQnlQbHVnaW4oZmFsc2UpCiAgICAgICAgICwgbV9mb3JjZURvd25sb2Fk
KGZhbHNlKQorICAgICAgICAsIG1fdGFyZ2V0VHlwZShUYXJnZXRJc1Vuc3BlY2lmaWVkKQogICAg
IHsKICAgICAgICAgc2V0SFRUUFJlZmVycmVyKHJlZmVycmVyKTsKICAgICB9CkBAIC04NSw2ICs4
OCw3IEBAIHB1YmxpYzoKICAgICAgICAgLCBtX211c3RIYW5kbGVJbnRlcm5hbGx5KGZhbHNlKQog
ICAgICAgICAsIG1faXNSZXF1ZXN0ZWRCeVBsdWdpbihmYWxzZSkKICAgICAgICAgLCBtX2ZvcmNl
RG93bmxvYWQoZmFsc2UpCisgICAgICAgICwgbV90YXJnZXRUeXBlKFRhcmdldElzVW5zcGVjaWZp
ZWQpCiAgICAgewogICAgIH0KIApAQCAtMTE4LDggKzEyMiw2IEBAIHB1YmxpYzoKICAgICBUYXJn
ZXRUeXBlIHRhcmdldFR5cGUoKSBjb25zdCB7IHJldHVybiBtX3RhcmdldFR5cGU7IH0KICAgICB2
b2lkIHNldFRhcmdldFR5cGUoVGFyZ2V0VHlwZSB0eXBlKSB7IG1fdGFyZ2V0VHlwZSA9IHR5cGU7
IH0KIAotICAgIHN0YXRpYyBUYXJnZXRUeXBlIHRhcmdldFR5cGVGcm9tTWltZVR5cGUoY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSk7Ci0KIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFJlc291cmNl
UmVxdWVzdEJhc2U7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvYmxhY2tiZXJyeS9SZXNvdXJjZVJlcXVlc3RCbGFja0JlcnJ5LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9SZXNvdXJjZVJlcXVlc3RCbGFja0JlcnJ5
LmNwcAppbmRleCBhOTJkYmRhNjQwYmQ1ZjQwZDlhMzU3MTQ2YTlmZGE4ZDVkMjE3MmU0Li5lYTQw
OGMyNzdiMGQ2MmRiZTMyZGExMmFkYTliMDg0OTM1MDI0YzZhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvUmVzb3VyY2VSZXF1ZXN0QmxhY2tC
ZXJyeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5
L1Jlc291cmNlUmVxdWVzdEJsYWNrQmVycnkuY3BwCkBAIC0yMyw3ICsyMyw2IEBACiAjaW5jbHVk
ZSAiQ29va2llTWFuYWdlci5oIgogI2luY2x1ZGUgPEJsYWNrQmVycnlQbGF0Zm9ybUNsaWVudC5o
PgogI2luY2x1ZGUgPG5ldHdvcmsvTmV0d29ya1JlcXVlc3QuaD4KLSNpbmNsdWRlIDx3dGYvSGFz
aE1hcC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KIAogdXNpbmcgQmxhY2tCZXJy
eTo6UGxhdGZvcm06Ok5ldHdvcmtSZXF1ZXN0OwpAQCAtODAsNTMgKzc5LDI4IEBAIHN0YXRpYyBp
bmxpbmUgTmV0d29ya1JlcXVlc3Q6OlRhcmdldFR5cGUgcGxhdGZvcm1UYXJnZXRUeXBlRm9yUmVx
dWVzdChjb25zdCBSZXNvCiAgICAgICAgIHJldHVybiBOZXR3b3JrUmVxdWVzdDo6VGFyZ2V0SXNX
b3JrZXI7CiAgICAgY2FzZSBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzU2hhcmVkV29ya2VyOgog
ICAgICAgICByZXR1cm4gTmV0d29ya1JlcXVlc3Q6OlRhcmdldElzU2hhcmVkV29ya2VyOworCisg
ICAgICAgIC8vIEZJWE1FOiB0aGlzIG5lZWQgdG8gYmUgdXBkYXRlZCB0byB0aGUgcmlnaHQgdmFs
dWUsIGJ1dAorICAgICAgICAvLyB3ZSBuZWVkIHRvIGNvb3JkaW5hdGUgd2l0aCBBSVIgYXBpIGNo
YW5nZS4KKyAgICBjYXNlIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNGYXZpY29uOgorICAgICAg
ICByZXR1cm4gTmV0d29ya1JlcXVlc3Q6OlRhcmdldElzSW1hZ2U7CisgICAgY2FzZSBSZXNvdXJj
ZVJlcXVlc3Q6OlRhcmdldElzUHJlZmV0Y2g6CisgICAgICAgIHJldHVybiBOZXR3b3JrUmVxdWVz
dDo6VGFyZ2V0SXNTdWJyZXNvdXJjZTsKKyAgICBjYXNlIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0
SXNQcmVyZW5kZXI6CisgICAgICAgIHJldHVybiBOZXR3b3JrUmVxdWVzdDo6VGFyZ2V0SXNTdWJy
ZXNvdXJjZTsKKyAgICBjYXNlIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNYSFI6CisgICAgICAg
IHJldHVybiBOZXR3b3JrUmVxdWVzdDo6VGFyZ2V0SXNTdWJyZXNvdXJjZTsKKyAgICBjYXNlIFJl
c291cmNlUmVxdWVzdDo6VGFyZ2V0SXNUZXh0VHJhY2s6CisgICAgICAgIHJldHVybiBOZXR3b3Jr
UmVxdWVzdDo6VGFyZ2V0SXNTdWJyZXNvdXJjZTsKKyAgICBjYXNlIFJlc291cmNlUmVxdWVzdDo6
VGFyZ2V0SXNVbnNwZWNpZmllZDoKKyAgICAgICAgcmV0dXJuIE5ldHdvcmtSZXF1ZXN0OjpUYXJn
ZXRJc1N1YnJlc291cmNlOworCiAgICAgZGVmYXVsdDoKICAgICAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CiAgICAgICAgIHJldHVybiBOZXR3b3JrUmVxdWVzdDo6VGFyZ2V0SXNVbmtub3duOwog
ICAgIH0KIH0KIAotdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgUmVzb3VyY2VSZXF1ZXN0OjpUYXJn
ZXRUeXBlPiBNaW1lVHlwZVJlc291cmNlUmVxdWVzdFR5cGVNYXA7Ci0KLXN0YXRpYyBjb25zdCBN
aW1lVHlwZVJlc291cmNlUmVxdWVzdFR5cGVNYXAmIG1pbWVUeXBlUmVxdWVzdFR5cGVNYXAoKQot
ewotICAgIHN0YXRpYyBNaW1lVHlwZVJlc291cmNlUmVxdWVzdFR5cGVNYXAqIG1hcCA9IDA7Ci0g
ICAgaWYgKCFtYXApIHsKLSAgICAgICAgbWFwID0gbmV3IE1pbWVUeXBlUmVzb3VyY2VSZXF1ZXN0
VHlwZU1hcDsKLQotICAgICAgICBpZiAobWFwKSB7Ci0gICAgICAgICAgICAvLyBUaGUgbGlzdCBo
ZXJlIHNob3VsZCBtYXRjaCBleHRlbnNpb25NYXBbXSBpbiBNSU1FVHlwZVJlZ2lzdHJ5QmxhY2tC
ZXJyeS5jcHAKLSAgICAgICAgICAgIG1hcC0+YWRkKFN0cmluZygidGV4dC9jc3MiKSwgUmVzb3Vy
Y2VSZXF1ZXN0OjpUYXJnZXRJc1N0eWxlU2hlZXQpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3Ry
aW5nKCJhcHBsaWNhdGlvbi94LWphdmFzY3JpcHQiKSwgUmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJ
c1NjcmlwdCk7Ci0gICAgICAgICAgICBtYXAtPmFkZChTdHJpbmcoImltYWdlL2JtcCIpLCBSZXNv
dXJjZVJlcXVlc3Q6OlRhcmdldElzSW1hZ2UpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3RyaW5n
KCJpbWFnZS9naWYiKSwgUmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJc0ltYWdlKTsKLSAgICAgICAg
ICAgIG1hcC0+YWRkKFN0cmluZygiaW1hZ2UveC1pY29uIiksIFJlc291cmNlUmVxdWVzdDo6VGFy
Z2V0SXNJbWFnZSk7Ci0gICAgICAgICAgICBtYXAtPmFkZChTdHJpbmcoImltYWdlL2pwZWciKSwg
UmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJc0ltYWdlKTsKLSAgICAgICAgICAgIG1hcC0+YWRkKFN0
cmluZygiaW1hZ2UvcG5nIiksIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNJbWFnZSk7Ci0gICAg
ICAgICAgICBtYXAtPmFkZChTdHJpbmcoImltYWdlL3gtcG9ydGFibGUtYml0bWFwIiksIFJlc291
cmNlUmVxdWVzdDo6VGFyZ2V0SXNJbWFnZSk7Ci0gICAgICAgICAgICBtYXAtPmFkZChTdHJpbmco
ImltYWdlL3gtcG9ydGFibGUtZ3JheW1hcCIpLCBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzSW1h
Z2UpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3RyaW5nKCJpbWFnZS94LXBvcnRhYmxlLXBpeG1h
cCIpLCBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzSW1hZ2UpOwotICAgICAgICAgICAgbWFwLT5h
ZGQoU3RyaW5nKCJpbWFnZS9zdmcreG1sIiksIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNJbWFn
ZSk7Ci0gICAgICAgICAgICBtYXAtPmFkZChTdHJpbmcoImltYWdlL3RpZmYiKSwgUmVzb3VyY2VS
ZXF1ZXN0OjpUYXJnZXRJc0ltYWdlKTsKLSAgICAgICAgICAgIG1hcC0+YWRkKFN0cmluZygiaW1h
Z2UveC14Yml0bWFwIiksIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNJbWFnZSk7Ci0gICAgICAg
ICAgICBtYXAtPmFkZChTdHJpbmcoImltYWdlL3gteHBtIiksIFJlc291cmNlUmVxdWVzdDo6VGFy
Z2V0SXNJbWFnZSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICByZXR1cm4gKm1hcDsKLX0KLQot
UmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRUeXBlIFJlc291cmNlUmVxdWVzdDo6dGFyZ2V0VHlwZUZy
b21NaW1lVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQotewotICAgIGNvbnN0IE1pbWVUeXBl
UmVzb3VyY2VSZXF1ZXN0VHlwZU1hcCYgbWFwID0gbWltZVR5cGVSZXF1ZXN0VHlwZU1hcCgpOwot
Ci0gICAgTWltZVR5cGVSZXNvdXJjZVJlcXVlc3RUeXBlTWFwOjpjb25zdF9pdGVyYXRvciBpdGVy
ID0gbWFwLmZpbmQobWltZVR5cGUpOwotICAgIGlmIChpdGVyID09IG1hcC5lbmQoKSkKLSAgICAg
ICAgcmV0dXJuIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNVbnNwZWNpZmllZDsKLQotICAgIHJl
dHVybiBpdGVyLT5zZWNvbmQ7Ci19Ci0KIHZvaWQgUmVzb3VyY2VSZXF1ZXN0Ojppbml0aWFsaXpl
UGxhdGZvcm1SZXF1ZXN0KE5ldHdvcmtSZXF1ZXN0JiBwbGF0Zm9ybVJlcXVlc3QsIGJvb2wgY29v
a2llc0VuYWJsZWQsIGJvb2wgaXNJbml0aWFsLCBib29sIGlzUmVkaXJlY3QpIGNvbnN0CiB7CiAg
ICAgLy8gSWYgdGhpcyBpcyB0aGUgaW5pdGlhbCBsb2FkLCBza2lwIHRoZSByZXF1ZXN0IGJvZHkg
YW5kIGhlYWRlcnMuCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133203</attachid>
            <date>2012-03-22 01:09:50 -0700</date>
            <delta_ts>2012-03-22 19:20:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81874-20120322160948.patch</filename>
            <type>text/plain</type>
            <size>13193</size>
            <attacher name="Jason Liu">jasonliuwebkit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExNjQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDVhYzRkYWJiYTMyYzQ2
NGFlNTUyM2NlZjdjNTNiYjBlYzNmOWM5Mi4uY2VjMTcxMWQyYzk0MGVkNWY0MzVjNzVkODgyNWVk
MjQ3YTMwNTdiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTAzLTIxICBKYXNv
biBMaXUgIDxqYXNvbi5saXVAdG9yY2htb2JpbGUuY29tLmNuPgorCisgICAgICAgIFtCbGFja0Jl
cnJ5XSBTeW5jaHJvbml6ZSBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxODc0CisKKyAgICAgICAgV2Ug
Y2hhbmdlZCBhIGxvdCBpbiB0aGVzZSBmaWxlcyBsb2NhbGx5LiBCdXQgdGhlIGNoYW5nZXMgYXJl
IG5vdCB1cHN0cmVhbWVkLgorICAgICAgICBJdCBpcyBub3QgY29udmVuaWVudCB0byBkbyB0aGUg
b3RoZXIgdXBzdHJlYW1pbmcgd29yayBiYXNlZCBvbiB0aGVzZSBkaWZmZXJlbmNlcy4KKyAgICAg
ICAgU28gdXBzdHJlYW0gdGhlc2UgY2hhbmdlcy4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIEp1c3Qgc3luY2hyb25pemUgY29k
ZXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0d29ya0pvYi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrSm9iOjpOZXR3b3JrSm9iKToKKyAgICAgICAg
KFdlYkNvcmU6Ok5ldHdvcmtKb2I6OmluaXRpYWxpemUpOgorICAgICAgICAoV2ViQ29yZTo6TmV0
d29ya0pvYjo6aGFuZGxlTm90aWZ5SGVhZGVyUmVjZWl2ZWQpOgorICAgICAgICAoV2ViQ29yZTo6
TmV0d29ya0pvYjo6aGFuZGxlTm90aWZ5RGF0YVJlY2VpdmVkKToKKyAgICAgICAgKFdlYkNvcmU6
Ok5ldHdvcmtKb2I6OnNlbmRSZXNwb25zZUlmTmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmU6Ok5l
dHdvcmtKb2I6OnNlbmRSZXF1ZXN0V2l0aENyZWRlbnRpYWxzKToKKyAgICAgICAgKFdlYkNvcmU6
Ok5ldHdvcmtKb2I6OmhhbmRsZUFib3V0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2Js
YWNrYmVycnkvTmV0d29ya0pvYi5oOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya0pvYjo6aXNF
cnJvcik6CisgICAgICAgIChOZXR3b3JrSm9iKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3Jr
L2JsYWNrYmVycnkvTmV0d29ya01hbmFnZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29y
a01hbmFnZXI6OnN0YXJ0Sm9iKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVy
cnkvUmVzb3VyY2VSZXF1ZXN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Q6
OlJlc291cmNlUmVxdWVzdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5
L1Jlc291cmNlUmVxdWVzdEJsYWNrQmVycnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cGxhdGZv
cm1UYXJnZXRUeXBlRm9yUmVxdWVzdCk6CisKIDIwMTItMDMtMjEgIEVtaWwgQSBFa2x1bmQgIDxl
YWVAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgY2hhbmdlIHRvdWNoaW5nIEN1
c3RvbUZpbHRlclByb2dyYW0uaCB0byB0cnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmNwcAppbmRleCBjNzM3MDgx
M2YxM2QzZGJiY2QwNTA3YzkyMDVhM2E1YzAwMmZhYjQzLi45ZTU3MzE0ZWE1MTk5ZGM5MWJhNWMx
NjA3ZDI0OWFhYmRkZDg1NmE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2JsYWNrYmVycnkvTmV0d29ya0pvYi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2IuY3BwCkBAIC0xMDksNyArMTA5LDYg
QEAgTmV0d29ya0pvYjo6TmV0d29ya0pvYigpCiAgICAgLCBtX2RhdGFSZWNlaXZlZChmYWxzZSkK
ICAgICAsIG1fcmVzcG9uc2VTZW50KGZhbHNlKQogICAgICwgbV9jYWxsaW5nQ2xpZW50KGZhbHNl
KQotICAgICwgbV9pc1hIUihmYWxzZSkKICAgICAsIG1fbmVlZHNSZXRyeUFzRlRQRGlyZWN0b3J5
KGZhbHNlKQogICAgICwgbV9pc092ZXJyaWRlQ29udGVudFR5cGUoZmFsc2UpCiAgICAgLCBtX2V4
dGVuZGVkU3RhdHVzQ29kZSgwKQpAQCAtMTcwLDggKzE2OSw2IEBAIGJvb2wgTmV0d29ya0pvYjo6
aW5pdGlhbGl6ZShpbnQgcGxheWVySWQsCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBzZXRX
cmFwcGVkU3RyZWFtKHdyYXBwZWRTdHJlYW0pOwogCi0gICAgbV9pc1hIUiA9IHJlcXVlc3QuZ2V0
VGFyZ2V0VHlwZSgpID09IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpOZXR3b3JrUmVxdWVzdDo6VGFy
Z2V0SXNYTUxIVFRQUmVxdWVzdDsKLQogICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0zMTAsNyAr
MzA3LDExIEBAIHZvaWQgTmV0d29ya0pvYjo6aGFuZGxlTm90aWZ5SGVhZGVyUmVjZWl2ZWQoY29u
c3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFsCiAgICAgICAgIG1fY29udGVudERpc3Bv
c2l0aW9uID0gdmFsdWU7CiAKICAgICBpZiAobG93ZXJLZXkgPT0gInNldC1jb29raWUiKSB7Ci0g
ICAgICAgIGlmIChtX2ZyYW1lICYmIG1fZnJhbWUtPmxvYWRlcigpICYmIG1fZnJhbWUtPmxvYWRl
cigpLT5jbGllbnQoKQorICAgICAgICAvLyBGSVhNRTogSWYgYSB0YWIgaXMgY2xvc2VkLCBzb21l
dGltZXMgbmV0d29yayBkYXRhIHdpbGwgY29tZSBpbiBhZnRlciB0aGUgZnJhbWUgaGFzIGJlZW4g
ZGV0YWNoZWQgZnJvbSBpdHMgcGFnZSBidXQgYmVmb3JlIGl0IGlzIGRlbGV0ZWQuCisgICAgICAg
IC8vIElmIHRoaXMgaGFwcGVucywgbV9mcmFtZS0+cGFnZSgpIHdpbGwgcmV0dXJuIDAsIGFuZCBt
X2ZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCkgd2lsbCBiZSBpbiBhIGJhZCBzdGF0ZSBhbmQgY2Fs
bGluZyBpbnRvIGl0IHdpbGwgY3Jhc2guCisgICAgICAgIC8vIEZvciBub3cgd2UgY2hlY2sgZm9y
IHRoaXMgZXhwbGljaXRseSBieSBjaGVja2luZyBtX2ZyYW1lLT5wYWdlKCkuIEJ1dCB3ZSBzaG91
bGQgZmluZCBvdXQgd2h5IHRoZSBuZXR3b3JrIGpvYiBoYXNuJ3QgYmVlbiBjYW5jZWxsZWQgd2hl
biB0aGUgZnJhbWUgd2FzIGRldGFjaGVkLgorICAgICAgICAvLyBTZWUgUklNIFBSIDEzNDIwNwor
ICAgICAgICBpZiAobV9mcmFtZSAmJiBtX2ZyYW1lLT5wYWdlKCkgJiYgbV9mcmFtZS0+bG9hZGVy
KCkgJiYgbV9mcmFtZS0+bG9hZGVyKCktPmNsaWVudCgpCiAgICAgICAgICAgICAmJiBzdGF0aWNf
Y2FzdDxGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnkqPihtX2ZyYW1lLT5sb2FkZXIoKS0+Y2xp
ZW50KCkpLT5jb29raWVzRW5hYmxlZCgpKQogICAgICAgICAgICAgaGFuZGxlU2V0Q29va2llSGVh
ZGVyKHZhbHVlKTsKICAgICB9CkBAIC00MDEsNyArNDAyLDcgQEAgdm9pZCBOZXR3b3JrSm9iOjpo
YW5kbGVOb3RpZnlEYXRhUmVjZWl2ZWQoY29uc3QgY2hhciogYnVmLCBzaXplX3QgbGVuKQogICAg
ICAgICAvLyBpcyBvbiBhIGZpbGUgc3lzdGVtIGlmIGl0IGhhcyBhIE1JTUUgbWFwcGFibGUgZmls
ZSBleHRlbnNpb24uCiAgICAgICAgIC8vIFRoZSBmaWxlIGV4dGVuc2lvbiBpcyBsaWtlbHkgdG8g
YmUgY29ycmVjdC4KICAgICAgICAgaWYgKG1faXNGaWxlKSB7Ci0gICAgICAgICAgICBTdHJpbmcg
dXJsRmlsZW5hbWUgPSBtX3Jlc3BvbnNlLnVybCgpLmxhc3RQYXRoQ29tcG9uZW50KCk7CisgICAg
ICAgICAgICBXVEY6OlN0cmluZyB1cmxGaWxlbmFtZSA9IG1fcmVzcG9uc2UudXJsKCkubGFzdFBh
dGhDb21wb25lbnQoKTsKICAgICAgICAgICAgIHNpemVfdCBwb3MgPSB1cmxGaWxlbmFtZS5yZXZl
cnNlRmluZCgnLicpOwogICAgICAgICAgICAgaWYgKHBvcyAhPSBXVEY6Om5vdEZvdW5kKSB7CiAg
ICAgICAgICAgICAgICAgU3RyaW5nIGV4dGVuc2lvbiA9IHVybEZpbGVuYW1lLnN1YnN0cmluZyhw
b3MgKyAxKTsKQEAgLTY1OSw4ICs2NjAsOCBAQCB2b2lkIE5ldHdvcmtKb2I6OnNlbmRSZXNwb25z
ZUlmTmVlZGVkKCkKICAgICAgICAgbV9yZXNwb25zZS5zZXRTdWdnZXN0ZWRGaWxlbmFtZShzdWdn
ZXN0ZWRGaWxlbmFtZSk7CiAgICAgfQogCi0gICAgLy8gTWFrZSBzdXJlIGxvY2FsIGZpbGVzIGFy
ZW4ndCBjYWNoZWQsIHNpbmNlIHRoaXMganVzdCBkdXBsaWNhdGVzIHRoZW0uCi0gICAgaWYgKG1f
aXNGaWxlIHx8IG1faXNEYXRhIHx8IG1faXNBYm91dCkKKyAgICAvLyBEb24ndCBjYWNoZSByZXNv
dXJjZXMgZm9yICJhYm91dDoiCisgICAgaWYgKG1faXNBYm91dCkKICAgICAgICAgbV9yZXNwb25z
ZS5zZXRIVFRQSGVhZGVyRmllbGQoIkNhY2hlLUNvbnRyb2wiLCAibm8tY2FjaGUiKTsKIAogICAg
IGlmIChpc0NsaWVudEF2YWlsYWJsZSgpKSB7CkBAIC05NDEsNyArOTQyLDcgQEAgdm9pZCBOZXR3
b3JrSm9iOjpoYW5kbGVBYm91dCgpCiAgICAgU3RyaW5nIHJlc3VsdDsKIAogICAgIGJvb2wgaGFu
ZGxlZCA9IGZhbHNlOwotICAgIGlmIChhYm91dFdoYXQuaXNFbXB0eSgpIHx8IGVxdWFsSWdub3Jp
bmdDYXNlKGFib3V0V2hhdCwgImJsYW5rIikpIHsKKyAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2Uo
YWJvdXRXaGF0LCAiYmxhbmsiKSkgewogICAgICAgICBoYW5kbGVkID0gdHJ1ZTsKICAgICB9IGVs
c2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGFib3V0V2hhdCwgImNyZWRpdHMiKSkgewogICAgICAg
ICByZXN1bHQuYXBwZW5kKFN0cmluZygiPGh0bWw+PGhlYWQ+PHRpdGxlPk9wZW4gU291cmNlIENy
ZWRpdHM8L3RpdGxlPiA8c3R5bGU+IC5hYm91dCB7cGFkZGluZzoxNHB4O30gPC9zdHlsZT4gPG1l
dGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgdXNlci1z
Y2FsYWJsZT1ub1wiPjwvaGVhZD48Ym9keT4iKSk7CkBAIC0xMDEyLDEwICsxMDEzLDkgQEAgdm9p
ZCBOZXR3b3JrSm9iOjpoYW5kbGVBYm91dCgpCiAgICAgICAgIGhhbmRsZWQgPSB0cnVlOwogI2Vu
ZGlmCiAgICAgfQotCiAgICAgaWYgKGhhbmRsZWQpIHsKICAgICAgICAgQ1N0cmluZyByZXN1bHRT
dHJpbmcgPSByZXN1bHQudXRmOCgpOwotICAgICAgICBub3RpZnlTdGF0dXNSZWNlaXZlZCg0MDQs
IDApOworICAgICAgICBub3RpZnlTdGF0dXNSZWNlaXZlZChCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6
RmlsdGVyU3RyZWFtOjpTdGF0dXNTdWNjZXNzLCAwKTsKICAgICAgICAgbm90aWZ5U3RyaW5nSGVh
ZGVyUmVjZWl2ZWQoIkNvbnRlbnQtTGVuZ3RoIiwgU3RyaW5nOjpudW1iZXIocmVzdWx0U3RyaW5n
Lmxlbmd0aCgpKSk7CiAgICAgICAgIG5vdGlmeVN0cmluZ0hlYWRlclJlY2VpdmVkKCJDb250ZW50
LVR5cGUiLCAidGV4dC9odG1sIik7CiAgICAgICAgIG5vdGlmeURhdGFSZWNlaXZlZFBsYWluKHJl
c3VsdFN0cmluZy5kYXRhKCksIHJlc3VsdFN0cmluZy5sZW5ndGgoKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0d29ya0pvYi5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L05ldHdvcmtKb2IuaApp
bmRleCA1ODZiNDVmNGJjM2IyY2Q1MTA2ZDRlYmM3ODk4MzFlYjBhMzA2MWVhLi4zNzEwZmFhNGI4
NmYwNzg0Zjk1YTM3NWU2NDcxNTlmMGJhY2EyNmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvTmV0d29ya0pvYi5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3b3JrSm9iLmgKQEAgLTE0NSw3
ICsxNDUsNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc0Vycm9yKGludCBzdGF0dXNDb2RlKQog
ICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXR1c0NvZGUgPCAwIHx8ICghbV9pc1hIUiAmJiAoNDAw
IDw9IHN0YXR1c0NvZGUgJiYgc3RhdHVzQ29kZSA8IDYwMCkpOworICAgICAgICByZXR1cm4gc3Rh
dHVzQ29kZSA8IDAgfHwgKDQwMCA8PSBzdGF0dXNDb2RlICYmIHN0YXR1c0NvZGUgPCA2MDApOwog
ICAgIH0KIAogcHJpdmF0ZToKQEAgLTE3NCw3ICsxNzQsNiBAQCBwcml2YXRlOgogICAgIGJvb2wg
bV9kYXRhUmVjZWl2ZWQ7CiAgICAgYm9vbCBtX3Jlc3BvbnNlU2VudDsKICAgICBib29sIG1fY2Fs
bGluZ0NsaWVudDsKLSAgICBib29sIG1faXNYSFI7IC8vIEZJWE1FIC0gQWZ0ZXIgNy4wLCByZW1v
dmUgdGhpcy4gT25seSB0aGUgUXQgcG9ydCByZXBvcnRzIEhUVFAgZXJyb3Igc3RhdHVzZXMgYXMg
ZGlkRmFpbHMsIHNvIHdlIHByb2JhYmx5IHNob3VsZG4ndC4KICAgICBib29sIG1fbmVlZHNSZXRy
eUFzRlRQRGlyZWN0b3J5OwogICAgIGJvb2wgbV9pc092ZXJyaWRlQ29udGVudFR5cGU7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3
b3JrTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVy
cnkvTmV0d29ya01hbmFnZXIuY3BwCmluZGV4IGUzODMyZTkzM2Y5MzBhZjg2OGRhZTU2NWZkNzY5
YWMwZmQ2ZGE5N2IuLjU4Mzc4NmJkMWU3ZmVlYjZjMzVmMzg3M2I5NjhhZTI5MGMzNmU4NjMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9OZXR3
b3JrTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFj
a2JlcnJ5L05ldHdvcmtNYW5hZ2VyLmNwcApAQCAtMjgsNiArMjgsMTAgQEAKICNpbmNsdWRlICJS
ZXNvdXJjZUhhbmRsZUludGVybmFsLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAK
KyNpbmNsdWRlIDxCbGFja0JlcnJ5UGxhdGZvcm1DbGllbnQuaD4KKyNpbmNsdWRlIDxCbGFja0Jl
cnJ5UGxhdGZvcm1Mb2cuaD4KKyNpbmNsdWRlIDxCdWlsZEluZm9ybWF0aW9uLmg+CisjaW5jbHVk
ZSA8bmV0d29yay9GaWx0ZXJTdHJlYW0uaD4KICNpbmNsdWRlIDxuZXR3b3JrL05ldHdvcmtSZXF1
ZXN0Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTEwOCw3ICsxMTIsNyBAQCBib29sIE5l
dHdvcmtNYW5hZ2VyOjpzdGFydEpvYihpbnQgcGxheWVySWQsIGNvbnN0IFN0cmluZyYgcGFnZUdy
b3VwTmFtZSwgUGFzc1JlZgogCiAgICAgICAgIGlmIChhdXRoVHlwZSAhPSBCbGFja0JlcnJ5OjpQ
bGF0Zm9ybTo6TmV0d29ya1JlcXVlc3Q6OkF1dGhOb25lKQogICAgICAgICAgICAgcGxhdGZvcm1S
ZXF1ZXN0LnNldENyZWRlbnRpYWxzKHVzZXJuYW1lLnV0ZjgoKS5kYXRhKCksIHBhc3N3b3JkLnV0
ZjgoKS5kYXRhKCksIGF1dGhUeXBlKTsKLSAgICB9IGVsc2UgaWYgKHVybC5wcm90b2NvbElzSW5I
VFRQRmFtaWx5KCkpIHsKKyAgICB9IGVsc2UgaWYgKHVybC5wcm90b2NvbEluSFRUUEZhbWlseSgp
KSB7CiAgICAgICAgIC8vIEZvciBVUkxzIHRoYXQgbWF0Y2ggdGhlIHBhdGhzIG9mIHRob3NlIHBy
ZXZpb3VzbHkgY2hhbGxlbmdlZCBmb3IgSFRUUCBCYXNpYyBhdXRoZW50aWNhdGlvbiwKICAgICAg
ICAgLy8gdHJ5IGFuZCByZXVzZSB0aGUgY3JlZGVudGlhbCBwcmVlbXB0aXZlbHksIGFzIGFsbG93
ZWQgYnkgUkZDIDI2MTcuCiAgICAgICAgIENyZWRlbnRpYWwgY3JlZGVudGlhbCA9IENyZWRlbnRp
YWxTdG9yYWdlOjpnZXQodXJsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvYmxhY2tiZXJyeS9SZXNvdXJjZVJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvYmxhY2tiZXJyeS9SZXNvdXJjZVJlcXVlc3QuaAppbmRleCBhZDE5MWZm
ODQyM2UzNzhhZjAwZGM4ZTdlYzA0NTdiZjdmNmMwOGFlLi4zYjhhNDc5ODJjZDEwYmU3NGNmN2Zm
YThlZDIyZjU3YzhlMTliNzgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL2JsYWNrYmVycnkvUmVzb3VyY2VSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L1Jlc291cmNlUmVxdWVzdC5oCkBAIC01Nyw2ICs1
Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgLCBtX211c3RIYW5kbGVJbnRlcm5hbGx5KGZhbHNlKQog
ICAgICAgICAsIG1faXNSZXF1ZXN0ZWRCeVBsdWdpbihmYWxzZSkKICAgICAgICAgLCBtX2ZvcmNl
RG93bmxvYWQoZmFsc2UpCisgICAgICAgICwgbV90YXJnZXRUeXBlKFRhcmdldElzVW5zcGVjaWZp
ZWQpCiAgICAgewogICAgIH0KIApAQCAtNjYsNiArNjcsNyBAQCBwdWJsaWM6CiAgICAgICAgICwg
bV9tdXN0SGFuZGxlSW50ZXJuYWxseShmYWxzZSkKICAgICAgICAgLCBtX2lzUmVxdWVzdGVkQnlQ
bHVnaW4oZmFsc2UpCiAgICAgICAgICwgbV9mb3JjZURvd25sb2FkKGZhbHNlKQorICAgICAgICAs
IG1fdGFyZ2V0VHlwZShUYXJnZXRJc1Vuc3BlY2lmaWVkKQogICAgIHsKICAgICB9CiAKQEAgLTc1
LDYgKzc3LDcgQEAgcHVibGljOgogICAgICAgICAsIG1fbXVzdEhhbmRsZUludGVybmFsbHkoZmFs
c2UpCiAgICAgICAgICwgbV9pc1JlcXVlc3RlZEJ5UGx1Z2luKGZhbHNlKQogICAgICAgICAsIG1f
Zm9yY2VEb3dubG9hZChmYWxzZSkKKyAgICAgICAgLCBtX3RhcmdldFR5cGUoVGFyZ2V0SXNVbnNw
ZWNpZmllZCkKICAgICB7CiAgICAgICAgIHNldEhUVFBSZWZlcnJlcihyZWZlcnJlcik7CiAgICAg
fQpAQCAtODUsNiArODgsNyBAQCBwdWJsaWM6CiAgICAgICAgICwgbV9tdXN0SGFuZGxlSW50ZXJu
YWxseShmYWxzZSkKICAgICAgICAgLCBtX2lzUmVxdWVzdGVkQnlQbHVnaW4oZmFsc2UpCiAgICAg
ICAgICwgbV9mb3JjZURvd25sb2FkKGZhbHNlKQorICAgICAgICAsIG1fdGFyZ2V0VHlwZShUYXJn
ZXRJc1Vuc3BlY2lmaWVkKQogICAgIHsKICAgICB9CiAKQEAgLTExOCw4ICsxMjIsNiBAQCBwdWJs
aWM6CiAgICAgVGFyZ2V0VHlwZSB0YXJnZXRUeXBlKCkgY29uc3QgeyByZXR1cm4gbV90YXJnZXRU
eXBlOyB9CiAgICAgdm9pZCBzZXRUYXJnZXRUeXBlKFRhcmdldFR5cGUgdHlwZSkgeyBtX3Rhcmdl
dFR5cGUgPSB0eXBlOyB9CiAKLSAgICBzdGF0aWMgVGFyZ2V0VHlwZSB0YXJnZXRUeXBlRnJvbU1p
bWVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBj
bGFzcyBSZXNvdXJjZVJlcXVlc3RCYXNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvUmVzb3VyY2VSZXF1ZXN0QmxhY2tCZXJyeS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvUmVzb3VyY2VSZXF1
ZXN0QmxhY2tCZXJyeS5jcHAKaW5kZXggYTkyZGJkYTY0MGJkNWY0MGQ5YTM1NzE0NmE5ZmRhOGQ1
ZDIxNzJlNC4uZWE0MDhjMjc3YjBkNjJkYmUzMmRhMTJhZGE5YjA4NDkzNTAyNGM2YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L1Jlc291cmNl
UmVxdWVzdEJsYWNrQmVycnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvYmxhY2tiZXJyeS9SZXNvdXJjZVJlcXVlc3RCbGFja0JlcnJ5LmNwcApAQCAtMjMsNyArMjMs
NiBAQAogI2luY2x1ZGUgIkNvb2tpZU1hbmFnZXIuaCIKICNpbmNsdWRlIDxCbGFja0JlcnJ5UGxh
dGZvcm1DbGllbnQuaD4KICNpbmNsdWRlIDxuZXR3b3JrL05ldHdvcmtSZXF1ZXN0Lmg+Ci0jaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKIHVz
aW5nIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpOZXR3b3JrUmVxdWVzdDsKQEAgLTgwLDUzICs3OSwy
OCBAQCBzdGF0aWMgaW5saW5lIE5ldHdvcmtSZXF1ZXN0OjpUYXJnZXRUeXBlIHBsYXRmb3JtVGFy
Z2V0VHlwZUZvclJlcXVlc3QoY29uc3QgUmVzbwogICAgICAgICByZXR1cm4gTmV0d29ya1JlcXVl
c3Q6OlRhcmdldElzV29ya2VyOwogICAgIGNhc2UgUmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJc1No
YXJlZFdvcmtlcjoKICAgICAgICAgcmV0dXJuIE5ldHdvcmtSZXF1ZXN0OjpUYXJnZXRJc1NoYXJl
ZFdvcmtlcjsKKworICAgICAgICAvLyBGSVhNRTogdGhpcyBuZWVkIHRvIGJlIHVwZGF0ZWQgdG8g
dGhlIHJpZ2h0IHZhbHVlLCBidXQKKyAgICAgICAgLy8gd2UgbmVlZCB0byBjb29yZGluYXRlIHdp
dGggQUlSIGFwaSBjaGFuZ2UuCisgICAgY2FzZSBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzRmF2
aWNvbjoKKyAgICAgICAgcmV0dXJuIE5ldHdvcmtSZXF1ZXN0OjpUYXJnZXRJc0ltYWdlOworICAg
IGNhc2UgUmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJc1ByZWZldGNoOgorICAgICAgICByZXR1cm4g
TmV0d29ya1JlcXVlc3Q6OlRhcmdldElzU3VicmVzb3VyY2U7CisgICAgY2FzZSBSZXNvdXJjZVJl
cXVlc3Q6OlRhcmdldElzUHJlcmVuZGVyOgorICAgICAgICByZXR1cm4gTmV0d29ya1JlcXVlc3Q6
OlRhcmdldElzU3VicmVzb3VyY2U7CisgICAgY2FzZSBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElz
WEhSOgorICAgICAgICByZXR1cm4gTmV0d29ya1JlcXVlc3Q6OlRhcmdldElzU3VicmVzb3VyY2U7
CisgICAgY2FzZSBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzVGV4dFRyYWNrOgorICAgICAgICBy
ZXR1cm4gTmV0d29ya1JlcXVlc3Q6OlRhcmdldElzU3VicmVzb3VyY2U7CisgICAgY2FzZSBSZXNv
dXJjZVJlcXVlc3Q6OlRhcmdldElzVW5zcGVjaWZpZWQ6CisgICAgICAgIHJldHVybiBOZXR3b3Jr
UmVxdWVzdDo6VGFyZ2V0SXNTdWJyZXNvdXJjZTsKKwogICAgIGRlZmF1bHQ6CiAgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgICAgICByZXR1cm4gTmV0d29ya1JlcXVlc3Q6OlRhcmdl
dElzVW5rbm93bjsKICAgICB9CiB9CiAKLXR5cGVkZWYgSGFzaE1hcDxTdHJpbmcsIFJlc291cmNl
UmVxdWVzdDo6VGFyZ2V0VHlwZT4gTWltZVR5cGVSZXNvdXJjZVJlcXVlc3RUeXBlTWFwOwotCi1z
dGF0aWMgY29uc3QgTWltZVR5cGVSZXNvdXJjZVJlcXVlc3RUeXBlTWFwJiBtaW1lVHlwZVJlcXVl
c3RUeXBlTWFwKCkKLXsKLSAgICBzdGF0aWMgTWltZVR5cGVSZXNvdXJjZVJlcXVlc3RUeXBlTWFw
KiBtYXAgPSAwOwotICAgIGlmICghbWFwKSB7Ci0gICAgICAgIG1hcCA9IG5ldyBNaW1lVHlwZVJl
c291cmNlUmVxdWVzdFR5cGVNYXA7Ci0KLSAgICAgICAgaWYgKG1hcCkgewotICAgICAgICAgICAg
Ly8gVGhlIGxpc3QgaGVyZSBzaG91bGQgbWF0Y2ggZXh0ZW5zaW9uTWFwW10gaW4gTUlNRVR5cGVS
ZWdpc3RyeUJsYWNrQmVycnkuY3BwCi0gICAgICAgICAgICBtYXAtPmFkZChTdHJpbmcoInRleHQv
Y3NzIiksIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNTdHlsZVNoZWV0KTsKLSAgICAgICAgICAg
IG1hcC0+YWRkKFN0cmluZygiYXBwbGljYXRpb24veC1qYXZhc2NyaXB0IiksIFJlc291cmNlUmVx
dWVzdDo6VGFyZ2V0SXNTY3JpcHQpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3RyaW5nKCJpbWFn
ZS9ibXAiKSwgUmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJc0ltYWdlKTsKLSAgICAgICAgICAgIG1h
cC0+YWRkKFN0cmluZygiaW1hZ2UvZ2lmIiksIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNJbWFn
ZSk7Ci0gICAgICAgICAgICBtYXAtPmFkZChTdHJpbmcoImltYWdlL3gtaWNvbiIpLCBSZXNvdXJj
ZVJlcXVlc3Q6OlRhcmdldElzSW1hZ2UpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3RyaW5nKCJp
bWFnZS9qcGVnIiksIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNJbWFnZSk7Ci0gICAgICAgICAg
ICBtYXAtPmFkZChTdHJpbmcoImltYWdlL3BuZyIpLCBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElz
SW1hZ2UpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3RyaW5nKCJpbWFnZS94LXBvcnRhYmxlLWJp
dG1hcCIpLCBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzSW1hZ2UpOwotICAgICAgICAgICAgbWFw
LT5hZGQoU3RyaW5nKCJpbWFnZS94LXBvcnRhYmxlLWdyYXltYXAiKSwgUmVzb3VyY2VSZXF1ZXN0
OjpUYXJnZXRJc0ltYWdlKTsKLSAgICAgICAgICAgIG1hcC0+YWRkKFN0cmluZygiaW1hZ2UveC1w
b3J0YWJsZS1waXhtYXAiKSwgUmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJc0ltYWdlKTsKLSAgICAg
ICAgICAgIG1hcC0+YWRkKFN0cmluZygiaW1hZ2Uvc3ZnK3htbCIpLCBSZXNvdXJjZVJlcXVlc3Q6
OlRhcmdldElzSW1hZ2UpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3RyaW5nKCJpbWFnZS90aWZm
IiksIFJlc291cmNlUmVxdWVzdDo6VGFyZ2V0SXNJbWFnZSk7Ci0gICAgICAgICAgICBtYXAtPmFk
ZChTdHJpbmcoImltYWdlL3gteGJpdG1hcCIpLCBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzSW1h
Z2UpOwotICAgICAgICAgICAgbWFwLT5hZGQoU3RyaW5nKCJpbWFnZS94LXhwbSIpLCBSZXNvdXJj
ZVJlcXVlc3Q6OlRhcmdldElzSW1hZ2UpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgcmV0dXJu
ICptYXA7Ci19Ci0KLVJlc291cmNlUmVxdWVzdDo6VGFyZ2V0VHlwZSBSZXNvdXJjZVJlcXVlc3Q6
OnRhcmdldFR5cGVGcm9tTWltZVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKLXsKLSAgICBj
b25zdCBNaW1lVHlwZVJlc291cmNlUmVxdWVzdFR5cGVNYXAmIG1hcCA9IG1pbWVUeXBlUmVxdWVz
dFR5cGVNYXAoKTsKLQotICAgIE1pbWVUeXBlUmVzb3VyY2VSZXF1ZXN0VHlwZU1hcDo6Y29uc3Rf
aXRlcmF0b3IgaXRlciA9IG1hcC5maW5kKG1pbWVUeXBlKTsKLSAgICBpZiAoaXRlciA9PSBtYXAu
ZW5kKCkpCi0gICAgICAgIHJldHVybiBSZXNvdXJjZVJlcXVlc3Q6OlRhcmdldElzVW5zcGVjaWZp
ZWQ7Ci0KLSAgICByZXR1cm4gaXRlci0+c2Vjb25kOwotfQotCiB2b2lkIFJlc291cmNlUmVxdWVz
dDo6aW5pdGlhbGl6ZVBsYXRmb3JtUmVxdWVzdChOZXR3b3JrUmVxdWVzdCYgcGxhdGZvcm1SZXF1
ZXN0LCBib29sIGNvb2tpZXNFbmFibGVkLCBib29sIGlzSW5pdGlhbCwgYm9vbCBpc1JlZGlyZWN0
KSBjb25zdAogewogICAgIC8vIElmIHRoaXMgaXMgdGhlIGluaXRpYWwgbG9hZCwgc2tpcCB0aGUg
cmVxdWVzdCBib2R5IGFuZCBoZWFkZXJzLgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>