<?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>117143</bug_id>
          
          <creation_ts>2013-06-03 05:59:35 -0700</creation_ts>
          <short_desc>Make WTR use its own temporary directory for application cache</short_desc>
          <delta_ts>2013-06-11 01:40:17 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>82061</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Csaba Osztrogonác">ossy</assigned_to>
          <cc>abecsi</cc>
    
    <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>menard</cc>
    
    <cc>ossy</cc>
    
    <cc>rakuco</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>896404</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-06-03 05:59:35 -0700</bug_when>
    <thetext>Similar bug report for disk cache directory, local storage directory 
and database directory: https://bugs.webkit.org/show_bug.cgi?id=89666

We need it for parallel testing and for clobbering the cache after the run 
for the next run. It would make the bots more robust and faster a little bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896405</commentid>
    <comment_count>1</comment_count>
      <attachid>203579</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-06-03 06:07:54 -0700</bug_when>
    <thetext>Created attachment 203579
first patch for EWS testing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896504</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-03 09:59:42 -0700</bug_when>
    <thetext>When adding this code, please remove WebKitLocalCacheDefaultsKey from WebContextMac.mm. 

This preference key is used by DumpRenderTree for the same purpose, but it&apos;s essentially unused in WebKit2, and keeping this code in addition to what you are adding would create substantial confusion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896507</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-03 10:00:34 -0700</bug_when>
    <thetext>Perhaps this patch will let us re-enable testing appcache on mac-wk2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896829</commentid>
    <comment_count>4</comment_count>
      <attachid>203579</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-06-04 04:17:19 -0700</bug_when>
    <thetext>Comment on attachment 203579
first patch for EWS testing

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

&gt; Source/WebKit2/UIProcess/WebContext.cpp:1025
&gt; +String WebContext::applicationCacheDirectory() const
&gt; +{
&gt; +    if (!m_overrideApplicationCacheDirectory.isEmpty())
&gt; +        return m_overrideApplicationCacheDirectory;
&gt; +
&gt; +    return platformDefaultApplicationCacheDirectory();
&gt; +}

If m_overrideApplicationCacheDirectory.isEmpty() is true,
the return value is platformDefaultApplicationCacheDirectory()
which is in Source/WebKit2/UIProcess/mac/WebContextMac.mm,
the old WebContext::applicationCacheDirectory().

I don&apos;t understand what should be its default return 
value without any WebKitLocalCacheDefaultsKey ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896944</commentid>
    <comment_count>5</comment_count>
      <attachid>203708</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-04 10:12:35 -0700</bug_when>
    <thetext>Created attachment 203708
suggested Mac cleanup

It will just take the path from confstr(_CS_DARWIN_USER_CACHE_DIR), and append application&apos;s bundle identifier, as it does today. Since WebKitTestRunner doesn&apos;t set WebKitLocalCache defaults key, trying it is just dead code.

Attached is the change I&apos;m suggesting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897235</commentid>
    <comment_count>6</comment_count>
      <attachid>203789</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-06-05 03:38:51 -0700</bug_when>
    <thetext>Created attachment 203789
proposed patch

Thanks for the Mac cleanup, I integrated it to this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897237</commentid>
    <comment_count>7</comment_count>
      <attachid>203791</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-06-05 03:41:25 -0700</bug_when>
    <thetext>Created attachment 203791
proposed patch

typo fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897453</commentid>
    <comment_count>8</comment_count>
      <attachid>203791</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-06-05 10:04:05 -0700</bug_when>
    <thetext>Comment on attachment 203791
proposed patch

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

&gt; Source/WebKit2/UIProcess/API/C/WKContextPrivate.h:62
&gt;  // FIXME: These functions are only effective if called before the Web process is launched. But
&gt;  // we should really change these settings to be on WebPreferences and changeable at runtime.

I would say that these functions are for WebKitTestRunner only, and would also consider going WebKit1 way, and just providing a single override for all cache files.

Perhaps there was a reason for fine-grained controls that I&apos;m not aware of though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899109</commentid>
    <comment_count>9</comment_count>
      <attachid>203791</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-06-11 01:40:09 -0700</bug_when>
    <thetext>Comment on attachment 203791
proposed patch

Clearing flags on attachment: 203791

Committed r151429: &lt;http://trac.webkit.org/changeset/151429&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>899111</commentid>
    <comment_count>10</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-06-11 01:40:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203579</attachid>
            <date>2013-06-03 06:07:54 -0700</date>
            <delta_ts>2013-06-05 03:38:37 -0700</delta_ts>
            <desc>first patch for EWS testing</desc>
            <filename>bug-117143-20130603150625.patch</filename>
            <type>text/plain</type>
            <size>9527</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxMTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTc4YjUxZTlmZjc0YjBk
NWM2ZmJkNWM0ZjZhMmVkOWY0OGNjNzkzYy4uODE3ZTVmNTY2MWRkYWZiMzE1MTkxNmU1NzM1NDZm
YWYyNTU3MzVmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA2LTAzICBPc3p0
cm9nb25hYyBDc2FiYSAgPG9zc3lAd2Via2l0Lm9yZz4KKworICAgICAgICBNYWtlIFdUUiB1c2Ug
aXRzIG93biB0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBhcHBsaWNhdGlvbiBjYWNoZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3MTQzCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0MvV0tDb250ZXh0LmNwcDoKKyAgICAgICAgKFdLQ29udGV4dFNldEFwcGxpY2F0aW9uQ2FjaGVE
aXJlY3RvcnkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmg6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJDb250ZXh0OjphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViQ29udGV4dC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpzZXRBcHBsaWNh
dGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1dlYkNvbnRleHRF
ZmwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRBcHBs
aWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZ3RrL1dlYkNvbnRl
eHRHdGsuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRB
cHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYkNv
bnRleHRNYWMubW06CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVs
dEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9XZWJD
b250ZXh0UXQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1
bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKwogMjAxMy0wNi0wMyAgU2VyZ2lvIENvcnJl
aWEgIDxzZXJnaW8uY29ycmVpYUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIFtFRkxdW1dLMl0g
UHJvY2VzcyBsYXVuY2hlciB1c2VzIHN5c3RlbSgpIGZvciB3cmFwcGluZyB0aGUgV2ViUHJvY2Vz
cyB3aGVuIHVzaW5nIFdFQl9QUk9DRVNTX0NNRF9QUkVGSVgKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKaW5kZXggNjFlYjI4ZjAyZDVjNWJkMDZkODQzNzlh
NzZmYmFjNzMwNzFkZjFhNy4uNDUzN2MyYjI4ZjdkZDAyZWNmMDgwNzI5Zjc5ZmQ3ODA4NzFhYTI3
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKQEAg
LTMwNCw2ICszMDQsMTEgQEAgdm9pZCBXS0NvbnRleHRTZXRMb2NhbFN0b3JhZ2VEaXJlY3Rvcnko
V0tDb250ZXh0UmVmIGNvbnRleHRSZWYsIFdLU3RyaW5nUmVmIGxvY2EKICAgICB0b0ltcGwoY29u
dGV4dFJlZiktPnNldExvY2FsU3RvcmFnZURpcmVjdG9yeSh0b0ltcGwobG9jYWxTdG9yYWdlRGly
ZWN0b3J5KS0+c3RyaW5nKCkpOwogfQogCitXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRTZXRBcHBs
aWNhdGlvbkNhY2hlRGlyZWN0b3J5KFdLQ29udGV4dFJlZiBjb250ZXh0UmVmLCBXS1N0cmluZ1Jl
ZiBhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KQoreworICAgIHRvSW1wbChjb250ZXh0UmVmKS0+
c2V0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSh0b0ltcGwoYXBwbGljYXRpb25DYWNoZURpcmVj
dG9yeSktPnN0cmluZygpKTsKK30KKwogV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0U2V0RGlza0Nh
Y2hlRGlyZWN0b3J5KFdLQ29udGV4dFJlZiBjb250ZXh0UmVmLCBXS1N0cmluZ1JlZiBkaXNrQ2Fj
aGVEaXJlY3RvcnkpCiB7CiAgICAgdG9JbXBsKGNvbnRleHRSZWYpLT5zZXREaXNrQ2FjaGVEaXJl
Y3RvcnkodG9JbXBsKGRpc2tDYWNoZURpcmVjdG9yeSktPnN0cmluZygpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCmluZGV4IGRhYTgx
N2Y0MzUxODViOTdmZmVjNzUwOWQ0NTE5MDM4ZTJiNjYyYzkuLjc5ZTdmN2YyNTIwN2IxYjQwMGUy
YjhiMjc4MTZlYTVlMjJmZDE0NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaApAQCAtNjAsNiArNjAsNyBAQCBXS19FWFBPUlQgdm9p
ZCBXS0NvbnRleHRBbGxvd1NwZWNpZmljSFRUUFNDZXJ0aWZpY2F0ZUZvckhvc3QoV0tDb250ZXh0
UmVmIGNvbnRleAogCiAvLyBGSVhNRTogVGhlc2UgZnVuY3Rpb25zIGFyZSBvbmx5IGVmZmVjdGl2
ZSBpZiBjYWxsZWQgYmVmb3JlIHRoZSBXZWIgcHJvY2VzcyBpcyBsYXVuY2hlZC4gQnV0CiAvLyB3
ZSBzaG91bGQgcmVhbGx5IGNoYW5nZSB0aGVzZSBzZXR0aW5ncyB0byBiZSBvbiBXZWJQcmVmZXJl
bmNlcyBhbmQgY2hhbmdlYWJsZSBhdCBydW50aW1lLgorV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0
U2V0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeShXS0NvbnRleHRSZWYgY29udGV4dCwgV0tTdHJp
bmdSZWYgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSk7CiBXS19FWFBPUlQgdm9pZCBXS0NvbnRl
eHRTZXREYXRhYmFzZURpcmVjdG9yeShXS0NvbnRleHRSZWYgY29udGV4dCwgV0tTdHJpbmdSZWYg
ZGF0YWJhc2VEaXJlY3RvcnkpOwogV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0U2V0TG9jYWxTdG9y
YWdlRGlyZWN0b3J5KFdLQ29udGV4dFJlZiBjb250ZXh0LCBXS1N0cmluZ1JlZiBsb2NhbFN0b3Jh
Z2VEaXJlY3RvcnkpOwogV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0U2V0RGlza0NhY2hlRGlyZWN0
b3J5KFdLQ29udGV4dFJlZiBjb250ZXh0LCBXS1N0cmluZ1JlZiBkaXNrQ2FjaGVEaXJlY3Rvcnkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwCmluZGV4IDUzNWZkZTk1MzZl
ODJjYTUxMGJmMGQ4ZWQwMGNiZjlmYjk2MmQzMzMuLjMxZWQyOTkzYjhhYzcxNjJkYWIwNTU1Mjk3
YWJiN2FjM2NlMzhkMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJD
b250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAK
QEAgLTEwMTYsNiArMTAxNiwxNCBAQCB2b2lkIFdlYkNvbnRleHQ6OnN0b3BNZW1vcnlTYW1wbGVy
KCkKICAgICBzZW5kVG9BbGxQcm9jZXNzZXMoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlN0b3BNZW1v
cnlTYW1wbGVyKCkpOwogfQogCitTdHJpbmcgV2ViQ29udGV4dDo6YXBwbGljYXRpb25DYWNoZURp
cmVjdG9yeSgpIGNvbnN0Cit7CisgICAgaWYgKCFtX292ZXJyaWRlQXBwbGljYXRpb25DYWNoZURp
cmVjdG9yeS5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBtX292ZXJyaWRlQXBwbGljYXRpb25D
YWNoZURpcmVjdG9yeTsKKworICAgIHJldHVybiBwbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNh
Y2hlRGlyZWN0b3J5KCk7Cit9CisKIFN0cmluZyBXZWJDb250ZXh0OjpkYXRhYmFzZURpcmVjdG9y
eSgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX292ZXJyaWRlRGF0YWJhc2VEaXJlY3RvcnkuaXNFbXB0
eSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgKaW5kZXggMzNmZjYzZWVhZTIy
NmE4NjRkNzkwZTk0NWFhZjk0NjYzODdjMTJmOS4uYzQzZGM1MzY4MTI0YzRmYzFkMGE2ZDIwZWI3
OGU5NTUzNzg2ZWI1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNv
bnRleHQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5oCkBAIC0x
NzAsNyArMTcwLDYgQEAgcHVibGljOgogCiAgICAgUGx1Z2luSW5mb1N0b3JlJiBwbHVnaW5JbmZv
U3RvcmUoKSB7IHJldHVybiBtX3BsdWdpbkluZm9TdG9yZTsgfQogI2VuZGlmCi0gICAgU3RyaW5n
IGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKTsKIAogICAgIHZvaWQgc2V0QWx3YXlzVXNlc0Nv
bXBsZXhUZXh0Q29kZVBhdGgoYm9vbCk7CiAgICAgdm9pZCBzZXRTaG91bGRVc2VGb250U21vb3Ro
aW5nKGJvb2wpOwpAQCAtMjIyLDYgKzIyMSw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIHN0YXRp
YyBTdGF0aXN0aWNzJiBzdGF0aXN0aWNzKCk7ICAgIAogCisgICAgdm9pZCBzZXRBcHBsaWNhdGlv
bkNhY2hlRGlyZWN0b3J5KGNvbnN0IFN0cmluZyYgZGlyKSB7IG1fb3ZlcnJpZGVBcHBsaWNhdGlv
bkNhY2hlRGlyZWN0b3J5ID0gZGlyOyB9CiAgICAgdm9pZCBzZXREYXRhYmFzZURpcmVjdG9yeShj
b25zdCBTdHJpbmcmIGRpcikgeyBtX292ZXJyaWRlRGF0YWJhc2VEaXJlY3RvcnkgPSBkaXI7IH0K
ICAgICB2b2lkIHNldEljb25EYXRhYmFzZVBhdGgoY29uc3QgU3RyaW5nJik7CiAgICAgU3RyaW5n
IGljb25EYXRhYmFzZVBhdGgoKSBjb25zdDsKQEAgLTM0OCw2ICszNDgsOSBAQCBwcml2YXRlOgog
ICAgIHN0YXRpYyB2b2lkIGxhbmd1YWdlQ2hhbmdlZCh2b2lkKiBjb250ZXh0KTsKICAgICB2b2lk
IGxhbmd1YWdlQ2hhbmdlZCgpOwogCisgICAgU3RyaW5nIGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3Rv
cnkoKSBjb25zdDsKKyAgICBTdHJpbmcgcGxhdGZvcm1EZWZhdWx0QXBwbGljYXRpb25DYWNoZURp
cmVjdG9yeSgpIGNvbnN0OworCiAgICAgU3RyaW5nIGRhdGFiYXNlRGlyZWN0b3J5KCkgY29uc3Q7
CiAgICAgU3RyaW5nIHBsYXRmb3JtRGVmYXVsdERhdGFiYXNlRGlyZWN0b3J5KCkgY29uc3Q7CiAK
QEAgLTQ1OSw2ICs0NjIsNyBAQCBwcml2YXRlOgogI2VuZGlmCiAjZW5kaWYKIAorICAgIFN0cmlu
ZyBtX292ZXJyaWRlQXBwbGljYXRpb25DYWNoZURpcmVjdG9yeTsKICAgICBTdHJpbmcgbV9vdmVy
cmlkZURhdGFiYXNlRGlyZWN0b3J5OwogICAgIFN0cmluZyBtX292ZXJyaWRlSWNvbkRhdGFiYXNl
UGF0aDsKICAgICBTdHJpbmcgbV9vdmVycmlkZUxvY2FsU3RvcmFnZURpcmVjdG9yeTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViQ29udGV4dEVmbC5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYkNvbnRleHRFZmwuY3BwCmluZGV4IDkyMjkx
ZDRmYWMzNmFhMGY3N2JjMDViZTE1NjE4MmM1YmU1MzNjZmIuLmQyZGNhM2RmYzg0YTRhNzM3MWIy
MzFkOWMxYTFhN2YxZGVlNzg2NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9lZmwvV2ViQ29udGV4dEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2Vm
bC9XZWJDb250ZXh0RWZsLmNwcApAQCAtODAsNyArODAsNyBAQCBzdGF0aWMgdm9pZCBpbml0aWFs
aXplSW5zcGVjdG9yU2VydmVyKCkKICNlbmRpZgogfQogCi1TdHJpbmcgV2ViQ29udGV4dDo6YXBw
bGljYXRpb25DYWNoZURpcmVjdG9yeSgpCitTdHJpbmcgV2ViQ29udGV4dDo6cGxhdGZvcm1EZWZh
dWx0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIFN0cmlu
Zzo6ZnJvbVVURjgoZWZyZWV0X2NhY2hlX2hvbWVfZ2V0KCkpICsgIi9XZWJLaXRFZmwvQXBwbGlj
YXRpb25zIjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvV2Vi
Q29udGV4dEd0ay5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYkNvbnRleHRH
dGsuY3BwCmluZGV4IGJhOTFmM2NlMWQyYWJiZDMyYTZlYTM2OGU5MDQwYmQ1YjU3NzY1NmEuLjIy
YmEyZjE3NmMwMzVlM2FmZmI2ZWFjNWU1NDg3NmZkNDNhYjRlYjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvV2ViQ29udGV4dEd0ay5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2d0ay9XZWJDb250ZXh0R3RrLmNwcApAQCAtNzgsNyArNzgsNyBAQCBz
dGF0aWMgdm9pZCBpbml0SW5zcGVjdG9yU2VydmVyKCkKICNlbmRpZgogfQogCi1XVEY6OlN0cmlu
ZyBXZWJDb250ZXh0OjphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkKK1dURjo6U3RyaW5nIFdl
YkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKSBjb25z
dAogewogICAgIEdPd25QdHI8Z2NoYXI+IGNhY2hlRGlyZWN0b3J5KGdfYnVpbGRfZmlsZW5hbWUo
Z19nZXRfdXNlcl9jYWNoZV9kaXIoKSwgIndlYmtpdGd0ayIsICJhcHBsaWNhdGlvbnMiLCBOVUxM
KSk7CiAgICAgcmV0dXJuIFdlYkNvcmU6OmZpbGVuYW1lVG9TdHJpbmcoY2FjaGVEaXJlY3Rvcnku
Z2V0KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250
ZXh0TWFjLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWFjLm1t
CmluZGV4IDNkMGI0Mzg1MmNkMDE5MzM3MWQ4ZGI2M2ZiMzMyYmI2ZjJiNGFiYjQuLjI4NWYzMDdm
MjAxOWUzNzg0YzEyZDY4NTI4NzA4NTg3NWY1YmY2ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0KQEAgLTI1NCw3ICsyNTQsNyBAQCB2b2lkIFdl
YkNvbnRleHQ6OnBsYXRmb3JtSW5pdGlhbGl6ZSgpCiAgICAgZW5hYmxlT2NjbHVzaW9uTm90aWZp
Y2F0aW9ucygpOwogfQogCi1TdHJpbmcgV2ViQ29udGV4dDo6YXBwbGljYXRpb25DYWNoZURpcmVj
dG9yeSgpCitTdHJpbmcgV2ViQ29udGV4dDo6cGxhdGZvcm1EZWZhdWx0QXBwbGljYXRpb25DYWNo
ZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAgICAgTlNTdHJpbmcgKmFwcE5hbWUgPSBbW05TQnVuZGxl
IG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdOwogICAgIGlmICghYXBwTmFtZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJDb250ZXh0UXQuY3BwIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYkNvbnRleHRRdC5jcHAKaW5kZXggOTA4MDBhMzU1
M2U2Nzk2NTI3ZDU4MDk2MGQ4NmUyZDgyYjAwZWI4OC4uNDQ4MjdlZWQ1YzIxY2JhNDBkNjRkZmZk
ZGFhY2ViOWJhZjljYjg4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0
L1dlYkNvbnRleHRRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYkNv
bnRleHRRdC5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLVN0
cmluZyBXZWJDb250ZXh0OjphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkKK1N0cmluZyBXZWJD
b250ZXh0OjpwbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkgY29uc3QK
IHsKICAgICBjb25zdCBTdHJpbmcgY2FjaGVEaXJlY3RvcnkgPSBXZWJDb3JlOjpjYWNoZVN0b3Jh
Z2UoKS5jYWNoZURpcmVjdG9yeSgpOwogCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggNWZlMDQwOTNkMTlhNTg0Njg5OWVjYjM3MDUxNGFlMmRlYjcw
NmE2OC4uNjcwNThlMjZmZjYwOWFlOTllZmZlMjMwNWYzNDg5YWE0YzA5MWZlYyAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDEzLTA2LTAzICBPc3p0cm9nb25hYyBDc2FiYSAgPG9zc3lAd2Via2l0Lm9yZz4KKworICAg
ICAgICBNYWtlIFdUUiB1c2UgaXRzIG93biB0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBhcHBsaWNh
dGlvbiBjYWNoZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTE3MTQzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6
VGVzdENvbnRyb2xsZXI6OmluaXRpYWxpemUpOgorCiAyMDEzLTA2LTAzICBLcnp5c3p0b2YgQ3pl
Y2ggIDxrLmN6ZWNoQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtHVEtdW1dLMl0gYWNjZXNzaWJp
bGl0eS9wbGFjZWhvbGRlci5odG1sIGlzIGZhaWxpbmcKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9U
ZXN0Q29udHJvbGxlci5jcHAKaW5kZXggYjdjNTQ5ZTcxODE2YzQ0Zjc4NTFkMDAxYTc2ZDg1NGMy
ZTgwN2E3ZS4uMDk2NDdhMTYwMTczODQxN2NmZmRmMDM2NmU0ZDk5MTgwM2Q2NDkyMyAxMDA2NDQK
LS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKKysrIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKQEAgLTM2NSw2ICszNjUsNyBA
QCB2b2lkIFRlc3RDb250cm9sbGVyOjppbml0aWFsaXplKGludCBhcmdjLCBjb25zdCBjaGFyKiBh
cmd2W10pCiAgICAgICAgIGNvbnN0IGNoYXIgc2VwYXJhdG9yID0gJy8nOwogI2VuZGlmCiAKKyAg
ICAgICAgV0tDb250ZXh0U2V0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeShtX2NvbnRleHQuZ2V0
KCksIHRvV0sodGVtcG9yYXJ5Rm9sZGVyICsgc2VwYXJhdG9yICsgIkFwcGxpY2F0aW9uQ2FjaGUi
KS5nZXQoKSk7CiAgICAgICAgIFdLQ29udGV4dFNldERhdGFiYXNlRGlyZWN0b3J5KG1fY29udGV4
dC5nZXQoKSwgdG9XSyh0ZW1wb3JhcnlGb2xkZXIgKyBzZXBhcmF0b3IgKyAiRGF0YWJhc2VzIiku
Z2V0KCkpOwogICAgICAgICBXS0NvbnRleHRTZXRMb2NhbFN0b3JhZ2VEaXJlY3RvcnkobV9jb250
ZXh0LmdldCgpLCB0b1dLKHRlbXBvcmFyeUZvbGRlciArIHNlcGFyYXRvciArICJMb2NhbFN0b3Jh
Z2UiKS5nZXQoKSk7CiAgICAgICAgIFdLQ29udGV4dFNldERpc2tDYWNoZURpcmVjdG9yeShtX2Nv
bnRleHQuZ2V0KCksIHRvV0sodGVtcG9yYXJ5Rm9sZGVyICsgc2VwYXJhdG9yICsgIkNhY2hlIiku
Z2V0KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203708</attachid>
            <date>2013-06-04 10:12:35 -0700</date>
            <delta_ts>2013-06-05 03:38:43 -0700</delta_ts>
            <desc>suggested Mac cleanup</desc>
            <filename>appcache.txt</filename>
            <type>text/plain</type>
            <size>1293</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0J
KHJldmlzaW9uIDE1MTE3MykKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29u
dGV4dE1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjYyLDE3ICsyNjIsMTIgQEAgU3RyaW5nIFdl
YkNvbnRleHQ6OmFwcGxpY2F0aW9uQ2FjaGVEaXJlYwogICAgIAogICAgIEFTU0VSVChhcHBOYW1l
KTsKICAgICAKLSAgICBOU1VzZXJEZWZhdWx0cyAqZGVmYXVsdHMgPSBbTlNVc2VyRGVmYXVsdHMg
c3RhbmRhcmRVc2VyRGVmYXVsdHNdOwotICAgIE5TU3RyaW5nICpjYWNoZURpciA9IFtkZWZhdWx0
cyBvYmplY3RGb3JLZXk6V2ViS2l0TG9jYWxDYWNoZURlZmF1bHRzS2V5XTsKLQotICAgIGlmICgh
Y2FjaGVEaXIgfHwgIVtjYWNoZURpciBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKSB7
Ci0gICAgICAgIGNoYXIgY2FjaGVEaXJlY3RvcnlbTUFYUEFUSExFTl07Ci0gICAgICAgIHNpemVf
dCBjYWNoZURpcmVjdG9yeUxlbiA9IGNvbmZzdHIoX0NTX0RBUldJTl9VU0VSX0NBQ0hFX0RJUiwg
Y2FjaGVEaXJlY3RvcnksIE1BWFBBVEhMRU4pOwotICAgIAotICAgICAgICBpZiAoY2FjaGVEaXJl
Y3RvcnlMZW4pCi0gICAgICAgICAgICBjYWNoZURpciA9IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0
TWFuYWdlcl0gc3RyaW5nV2l0aEZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbjpjYWNoZURpcmVjdG9y
eSBsZW5ndGg6Y2FjaGVEaXJlY3RvcnlMZW4gLSAxXTsKLSAgICB9CisgICAgY2hhciBjYWNoZURp
cmVjdG9yeVtNQVhQQVRITEVOXTsKKyAgICBzaXplX3QgY2FjaGVEaXJlY3RvcnlMZW4gPSBjb25m
c3RyKF9DU19EQVJXSU5fVVNFUl9DQUNIRV9ESVIsIGNhY2hlRGlyZWN0b3J5LCBNQVhQQVRITEVO
KTsKKyAgICBpZiAoIWNhY2hlRGlyZWN0b3J5TGVuKQorICAgICAgICByZXR1cm4gU3RyaW5nKCk7
CiAKKyAgICBOU1N0cmluZyAqY2FjaGVEaXIgPSBbW05TRmlsZU1hbmFnZXIgZGVmYXVsdE1hbmFn
ZXJdIHN0cmluZ1dpdGhGaWxlU3lzdGVtUmVwcmVzZW50YXRpb246Y2FjaGVEaXJlY3RvcnkgbGVu
Z3RoOmNhY2hlRGlyZWN0b3J5TGVuIC0gMV07CiAgICAgcmV0dXJuIFtjYWNoZURpciBzdHJpbmdC
eUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6YXBwTmFtZV07CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203789</attachid>
            <date>2013-06-05 03:38:51 -0700</date>
            <delta_ts>2013-06-05 03:41:17 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>bug-117143-20130605123724.patch</filename>
            <type>text/plain</type>
            <size>10523</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxMjA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggY2Q3ZmJhMzgwOWI5NTU1
YjkxNDU2ZDgwNzViYTI5MjdjNmMyZTBmMC4uYmYwN2VhYjA1ZTI5Y2YyNzJiNWRkMzU5NjUwNzA5
YTViM2NkNzg2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA2LTA1ICBPc3p0
cm9nb25hYyBDc2FiYSAgPG9zc3lAd2Via2l0Lm9yZz4KKworICAgICAgICBNYWtlIFdUUiB1c2Ug
aXRzIG93biB0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBhcHBsaWNhdGlvbiBjYWNoZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3MTQzCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0MvV0tDb250ZXh0LmNwcDoKKyAgICAgICAgKFdLQ29udGV4dFNldEFwcGxpY2F0aW9uQ2FjaGVE
aXJlY3RvcnkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmg6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJDb250ZXh0OjphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViQ29udGV4dC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpzZXRBcHBsaWNh
dGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1dlYkNvbnRleHRF
ZmwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRBcHBs
aWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZ3RrL1dlYkNvbnRl
eHRHdGsuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRB
cHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYkNv
bnRleHRNYWMubW06CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVs
dEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9XZWJD
b250ZXh0UXQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1
bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKwogMjAxMy0wNi0wNCAgU2ltb24gQ29vcGVy
ICA8c2Nvb3BlckBhcHBsZS5jb20+CiAKICAgICAgICAgVGlnaHRlbiBwbHVnaW4gc2FuZGJveCBw
cm9maWxlcyBhZ2FpbnN0IHN5bWxpbmsgYXR0YWNrcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tDb250ZXh0LmNwcAppbmRleCA2MWViMjhmMDJkNWM1YmQwNmQ4NDM3OWE3NmZi
YWM3MzA3MWRmMWE3Li4xNjI5YTU2MjczOThlZjY2MzVmYzNiNDBmZThkNTNlYmJhZmI0NDZhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcApAQCAtMjk0
LDYgKzI5NCwxMSBAQCB2b2lkIFdLQ29udGV4dEFsbG93U3BlY2lmaWNIVFRQU0NlcnRpZmljYXRl
Rm9ySG9zdChXS0NvbnRleHRSZWYgY29udGV4dFJlZiwgV0tDZQogICAgIHRvSW1wbChjb250ZXh0
UmVmKS0+YWxsb3dTcGVjaWZpY0hUVFBTQ2VydGlmaWNhdGVGb3JIb3N0KHRvSW1wbChjZXJ0aWZp
Y2F0ZVJlZiksIHRvSW1wbChob3N0UmVmKS0+c3RyaW5nKCkpOwogfQogCitXS19FWFBPUlQgdm9p
ZCBXS0NvbnRleHRTZXRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KFdLQ29udGV4dFJlZiBjb250
ZXh0UmVmLCBXS1N0cmluZ1JlZiBhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KQoreworICAgIHRv
SW1wbChjb250ZXh0UmVmKS0+c2V0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSh0b0ltcGwoYXBw
bGljYXRpb25DYWNoZURpcmVjdG9yeSktPnN0cmluZygpKTsKK30KKwogdm9pZCBXS0NvbnRleHRT
ZXREYXRhYmFzZURpcmVjdG9yeShXS0NvbnRleHRSZWYgY29udGV4dFJlZiwgV0tTdHJpbmdSZWYg
ZGF0YWJhc2VEaXJlY3RvcnkpCiB7CiAgICAgdG9JbXBsKGNvbnRleHRSZWYpLT5zZXREYXRhYmFz
ZURpcmVjdG9yeSh0b0ltcGwoZGF0YWJhc2VEaXJlY3RvcnkpLT5zdHJpbmcoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaAppbmRleCBk
YWE4MTdmNDM1MTg1Yjk3ZmZlYzc1MDlkNDUxOTAzOGUyYjY2MmM5Li43OWU3ZjdmMjUyMDdiMWI0
MDBlMmI4YjI3ODE2ZWE1ZTIyZmQxNDY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKQEAgLTYwLDYgKzYwLDcgQEAgV0tfRVhQT1JU
IHZvaWQgV0tDb250ZXh0QWxsb3dTcGVjaWZpY0hUVFBTQ2VydGlmaWNhdGVGb3JIb3N0KFdLQ29u
dGV4dFJlZiBjb250ZXgKIAogLy8gRklYTUU6IFRoZXNlIGZ1bmN0aW9ucyBhcmUgb25seSBlZmZl
Y3RpdmUgaWYgY2FsbGVkIGJlZm9yZSB0aGUgV2ViIHByb2Nlc3MgaXMgbGF1bmNoZWQuIEJ1dAog
Ly8gd2Ugc2hvdWxkIHJlYWxseSBjaGFuZ2UgdGhlc2Ugc2V0dGluZ3MgdG8gYmUgb24gV2ViUHJl
ZmVyZW5jZXMgYW5kIGNoYW5nZWFibGUgYXQgcnVudGltZS4KK1dLX0VYUE9SVCB2b2lkIFdLQ29u
dGV4dFNldEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoV0tDb250ZXh0UmVmIGNvbnRleHQsIFdL
U3RyaW5nUmVmIGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpOwogV0tfRVhQT1JUIHZvaWQgV0tD
b250ZXh0U2V0RGF0YWJhc2VEaXJlY3RvcnkoV0tDb250ZXh0UmVmIGNvbnRleHQsIFdLU3RyaW5n
UmVmIGRhdGFiYXNlRGlyZWN0b3J5KTsKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dFNldExvY2Fs
U3RvcmFnZURpcmVjdG9yeShXS0NvbnRleHRSZWYgY29udGV4dCwgV0tTdHJpbmdSZWYgbG9jYWxT
dG9yYWdlRGlyZWN0b3J5KTsKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dFNldERpc2tDYWNoZURp
cmVjdG9yeShXS0NvbnRleHRSZWYgY29udGV4dCwgV0tTdHJpbmdSZWYgZGlza0NhY2hlRGlyZWN0
b3J5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcAppbmRleCA1MzVmZGU5
NTM2ZTgyY2E1MTBiZjBkOGVkMDBjYmY5ZmI5NjJkMzMzLi4zMWVkMjk5M2I4YWM3MTYyZGFiMDU1
NTI5N2FiYjdhYzNjZTM4ZDFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQu
Y3BwCkBAIC0xMDE2LDYgKzEwMTYsMTQgQEAgdm9pZCBXZWJDb250ZXh0OjpzdG9wTWVtb3J5U2Ft
cGxlcigpCiAgICAgc2VuZFRvQWxsUHJvY2Vzc2VzKE1lc3NhZ2VzOjpXZWJQcm9jZXNzOjpTdG9w
TWVtb3J5U2FtcGxlcigpKTsKIH0KIAorU3RyaW5nIFdlYkNvbnRleHQ6OmFwcGxpY2F0aW9uQ2Fj
aGVEaXJlY3RvcnkoKSBjb25zdAoreworICAgIGlmICghbV9vdmVycmlkZUFwcGxpY2F0aW9uQ2Fj
aGVEaXJlY3RvcnkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbV9vdmVycmlkZUFwcGxpY2F0
aW9uQ2FjaGVEaXJlY3Rvcnk7CisKKyAgICByZXR1cm4gcGxhdGZvcm1EZWZhdWx0QXBwbGljYXRp
b25DYWNoZURpcmVjdG9yeSgpOworfQorCiBTdHJpbmcgV2ViQ29udGV4dDo6ZGF0YWJhc2VEaXJl
Y3RvcnkoKSBjb25zdAogewogICAgIGlmICghbV9vdmVycmlkZURhdGFiYXNlRGlyZWN0b3J5Lmlz
RW1wdHkoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5oCmluZGV4IDMzZmY2M2Vl
YWUyMjZhODY0ZDc5MGU5NDVhYWY5NDY2Mzg3YzEyZjkuLmM0M2RjNTM2ODEyNGM0ZmMxZDBhNmQy
MGViNzhlOTU1Mzc4NmViNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaApA
QCAtMTcwLDcgKzE3MCw2IEBAIHB1YmxpYzoKIAogICAgIFBsdWdpbkluZm9TdG9yZSYgcGx1Z2lu
SW5mb1N0b3JlKCkgeyByZXR1cm4gbV9wbHVnaW5JbmZvU3RvcmU7IH0KICNlbmRpZgotICAgIFN0
cmluZyBhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCk7CiAKICAgICB2b2lkIHNldEFsd2F5c1Vz
ZXNDb21wbGV4VGV4dENvZGVQYXRoKGJvb2wpOwogICAgIHZvaWQgc2V0U2hvdWxkVXNlRm9udFNt
b290aGluZyhib29sKTsKQEAgLTIyMiw2ICsyMjEsNyBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBz
dGF0aWMgU3RhdGlzdGljcyYgc3RhdGlzdGljcygpOyAgICAKIAorICAgIHZvaWQgc2V0QXBwbGlj
YXRpb25DYWNoZURpcmVjdG9yeShjb25zdCBTdHJpbmcmIGRpcikgeyBtX292ZXJyaWRlQXBwbGlj
YXRpb25DYWNoZURpcmVjdG9yeSA9IGRpcjsgfQogICAgIHZvaWQgc2V0RGF0YWJhc2VEaXJlY3Rv
cnkoY29uc3QgU3RyaW5nJiBkaXIpIHsgbV9vdmVycmlkZURhdGFiYXNlRGlyZWN0b3J5ID0gZGly
OyB9CiAgICAgdm9pZCBzZXRJY29uRGF0YWJhc2VQYXRoKGNvbnN0IFN0cmluZyYpOwogICAgIFN0
cmluZyBpY29uRGF0YWJhc2VQYXRoKCkgY29uc3Q7CkBAIC0zNDgsNiArMzQ4LDkgQEAgcHJpdmF0
ZToKICAgICBzdGF0aWMgdm9pZCBsYW5ndWFnZUNoYW5nZWQodm9pZCogY29udGV4dCk7CiAgICAg
dm9pZCBsYW5ndWFnZUNoYW5nZWQoKTsKIAorICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5KCkgY29uc3Q7CisgICAgU3RyaW5nIHBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0aW9uQ2Fj
aGVEaXJlY3RvcnkoKSBjb25zdDsKKwogICAgIFN0cmluZyBkYXRhYmFzZURpcmVjdG9yeSgpIGNv
bnN0OwogICAgIFN0cmluZyBwbGF0Zm9ybURlZmF1bHREYXRhYmFzZURpcmVjdG9yeSgpIGNvbnN0
OwogCkBAIC00NTksNiArNDYyLDcgQEAgcHJpdmF0ZToKICNlbmRpZgogI2VuZGlmCiAKKyAgICBT
dHJpbmcgbV9vdmVycmlkZUFwcGxpY2F0aW9uQ2FjaGVEaXJlY3Rvcnk7CiAgICAgU3RyaW5nIG1f
b3ZlcnJpZGVEYXRhYmFzZURpcmVjdG9yeTsKICAgICBTdHJpbmcgbV9vdmVycmlkZUljb25EYXRh
YmFzZVBhdGg7CiAgICAgU3RyaW5nIG1fb3ZlcnJpZGVMb2NhbFN0b3JhZ2VEaXJlY3Rvcnk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYkNvbnRleHRFZmwuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJDb250ZXh0RWZsLmNwcAppbmRleCA5
MjI5MWQ0ZmFjMzZhYTBmNzdiYzA1YmUxNTYxODJjNWJlNTMzY2ZiLi5kMmRjYTNkZmM4NGE0YTcz
NzFiMjMxZDljMWExYTdmMWRlZTc4NjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvZWZsL1dlYkNvbnRleHRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9lZmwvV2ViQ29udGV4dEVmbC5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgc3RhdGljIHZvaWQgaW5p
dGlhbGl6ZUluc3BlY3RvclNlcnZlcigpCiAjZW5kaWYKIH0KIAotU3RyaW5nIFdlYkNvbnRleHQ6
OmFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKQorU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3Jt
RGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKSBjb25zdAogewogICAgIHJldHVybiBT
dHJpbmc6OmZyb21VVEY4KGVmcmVldF9jYWNoZV9ob21lX2dldCgpKSArICIvV2ViS2l0RWZsL0Fw
cGxpY2F0aW9ucyI7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3Rr
L1dlYkNvbnRleHRHdGsuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0ay9XZWJDb250
ZXh0R3RrLmNwcAppbmRleCBiYTkxZjNjZTFkMmFiYmQzMmE2ZWEzNjhlOTA0MGJkNWI1Nzc2NTZh
Li4yMmJhMmYxNzZjMDM1ZTNhZmZiNmVhYzVlNTQ4NzZmZDQzYWI0ZWI5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYkNvbnRleHRHdGsuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvV2ViQ29udGV4dEd0ay5jcHAKQEAgLTc4LDcgKzc4LDcg
QEAgc3RhdGljIHZvaWQgaW5pdEluc3BlY3RvclNlcnZlcigpCiAjZW5kaWYKIH0KIAotV1RGOjpT
dHJpbmcgV2ViQ29udGV4dDo6YXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgpCitXVEY6OlN0cmlu
ZyBXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkg
Y29uc3QKIHsKICAgICBHT3duUHRyPGdjaGFyPiBjYWNoZURpcmVjdG9yeShnX2J1aWxkX2ZpbGVu
YW1lKGdfZ2V0X3VzZXJfY2FjaGVfZGlyKCksICJ3ZWJraXRndGsiLCAiYXBwbGljYXRpb25zIiwg
TlVMTCkpOwogICAgIHJldHVybiBXZWJDb3JlOjpmaWxlbmFtZVRvU3RyaW5nKGNhY2hlRGlyZWN0
b3J5LmdldCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2Vi
Q29udGV4dE1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1h
Yy5tbQppbmRleCAzZDBiNDM4NTJjZDAxOTMzNzFkOGRiNjNmYjMzMmJiNmYyYjRhYmI0Li5hMDdm
YWFlNGY0ZmNkMzU5NWVhNmVjM2RlNmY2YjBmYzhjMDMwNTUyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0KKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWFjLm1tCkBAIC0yNTQsMjUgKzI1NCwyMCBAQCB2
b2lkIFdlYkNvbnRleHQ6OnBsYXRmb3JtSW5pdGlhbGl6ZSgpCiAgICAgZW5hYmxlT2NjbHVzaW9u
Tm90aWZpY2F0aW9ucygpOwogfQogCi1TdHJpbmcgV2ViQ29udGV4dDo6YXBwbGljYXRpb25DYWNo
ZURpcmVjdG9yeSgpCitTdHJpbmcgV2ViQ29udGV4dDo6cGxhdGZvcm1EZWZhdWx0QXBwbGljYXRp
b25DYWNoZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAgICAgTlNTdHJpbmcgKmFwcE5hbWUgPSBbW05T
QnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdOwogICAgIGlmICghYXBwTmFtZSkK
ICAgICAgICAgYXBwTmFtZSA9IFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcHJvY2Vzc05h
bWVdOwotICAgIAorCiAgICAgQVNTRVJUKGFwcE5hbWUpOwotICAgIAotICAgIE5TVXNlckRlZmF1
bHRzICpkZWZhdWx0cyA9IFtOU1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c107Ci0g
ICAgTlNTdHJpbmcgKmNhY2hlRGlyID0gW2RlZmF1bHRzIG9iamVjdEZvcktleTpXZWJLaXRMb2Nh
bENhY2hlRGVmYXVsdHNLZXldOwogCi0gICAgaWYgKCFjYWNoZURpciB8fCAhW2NhY2hlRGlyIGlz
S2luZE9mQ2xhc3M6W05TU3RyaW5nIGNsYXNzXV0pIHsKLSAgICAgICAgY2hhciBjYWNoZURpcmVj
dG9yeVtNQVhQQVRITEVOXTsKLSAgICAgICAgc2l6ZV90IGNhY2hlRGlyZWN0b3J5TGVuID0gY29u
ZnN0cihfQ1NfREFSV0lOX1VTRVJfQ0FDSEVfRElSLCBjYWNoZURpcmVjdG9yeSwgTUFYUEFUSExF
Tik7Ci0gICAgCi0gICAgICAgIGlmIChjYWNoZURpcmVjdG9yeUxlbikKLSAgICAgICAgICAgIGNh
Y2hlRGlyID0gW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSBzdHJpbmdXaXRoRmlsZVN5
c3RlbVJlcHJlc2VudGF0aW9uOmNhY2hlRGlyZWN0b3J5IGxlbmd0aDpjYWNoZURpcmVjdG9yeUxl
biAtIDFdOwotICAgIH0KKyAgICBjaGFyIGNhY2hlRGlyZWN0b3J5W01BWFBBVEhMRU5dOworICAg
IHNpemVfdCBjYWNoZURpcmVjdG9yeUxlbiA9IGNvbmZzdHIoX0NTX0RBUldJTl9VU0VSX0NBQ0hF
X0RJUiwgY2FjaGVEaXJlY3RvcnksIE1BWFBBVEhMRU4pOworICAgIGlmICghY2FjaGVEaXJlY3Rv
cnlMZW4pCisgICAgICAgIHJldHVybiBTdHJpbmcoKTsKIAorICAgIE5TU3RyaW5nICpjYWNoZURp
ciA9IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gc3RyaW5nV2l0aEZpbGVTeXN0ZW1S
ZXByZXNlbnRhdGlvbjpjYWNoZURpcmVjdG9yeSBsZW5ndGg6Y2FjaGVEaXJlY3RvcnlMZW4gLSAx
XTsKICAgICByZXR1cm4gW2NhY2hlRGlyIHN0cmluZ0J5QXBwZW5kaW5nUGF0aENvbXBvbmVudDph
cHBOYW1lXTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dl
YkNvbnRleHRRdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViQ29udGV4dFF0
LmNwcAppbmRleCA5MDgwMGEzNTUzZTY3OTY1MjdkNTgwOTYwZDg2ZTJkODJiMDBlYjg4Li40NDgy
N2VlZDVjMjFjYmE0MGQ2NGRmZmRkYWFjZWI5YmFmOWNiODhlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViQ29udGV4dFF0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvcXQvV2ViQ29udGV4dFF0LmNwcApAQCAtNDAsNyArNDAsNyBAQAogCiBuYW1l
c3BhY2UgV2ViS2l0IHsKIAotU3RyaW5nIFdlYkNvbnRleHQ6OmFwcGxpY2F0aW9uQ2FjaGVEaXJl
Y3RvcnkoKQorU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0aW9uQ2Fj
aGVEaXJlY3RvcnkoKSBjb25zdAogewogICAgIGNvbnN0IFN0cmluZyBjYWNoZURpcmVjdG9yeSA9
IFdlYkNvcmU6OmNhY2hlU3RvcmFnZSgpLmNhY2hlRGlyZWN0b3J5KCk7CiAKZGlmZiAtLWdpdCBh
L1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2ODAxOWQwNGUyNDg2MmNj
YWViOThlZmMyNDUxM2M0NTI1OTdhYTEzLi40ZGM4MWJiNTJhM2U2ZGViZmU5ODQ0ZTFkOTAwOWI2
OWQ0YTlmMDNhIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDYtMDUgIE9zenRyb2dvbmFjIENzYWJhICA8b3Nz
eUB3ZWJraXQub3JnPgorCisgICAgICAgIE1ha2UgV1RSIHVzZSBpdHMgb3duIHRlbXBvcmFyeSBk
aXJlY3RvcnkgZm9yIGFwcGxpY2F0aW9uIGNhY2hlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTcxNDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6aW5pdGlhbGl6ZSk6CisKIDIwMTMt
MDYtMDUgIERhcml1c3ogRnJhbmtpZXdpY3ogIDxkLmZyYW5raWV3aWNAc2Ftc3VuZy5jb20+CiAK
ICAgICAgICAgQmFkIHZhbHVlIGluIHRlc3RzIGNvdW50ZXIgYXQgbmV3LXJ1bi13ZWJraXQtdGVz
dHMKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3Bw
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKaW5kZXggYjdjNTQ5
ZTcxODE2YzQ0Zjc4NTFkMDAxYTc2ZDg1NGMyZTgwN2E3ZS4uMDk2NDdhMTYwMTczODQxN2NmZmRm
MDM2NmU0ZDk5MTgwM2Q2NDkyMyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9U
ZXN0Q29udHJvbGxlci5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJv
bGxlci5jcHAKQEAgLTM2NSw2ICszNjUsNyBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjppbml0aWFs
aXplKGludCBhcmdjLCBjb25zdCBjaGFyKiBhcmd2W10pCiAgICAgICAgIGNvbnN0IGNoYXIgc2Vw
YXJhdG9yID0gJy8nOwogI2VuZGlmCiAKKyAgICAgICAgV0tDb250ZXh0U2V0QXBwbGljYXRpb25D
YWNoZURpcmVjdG9yeShtX2NvbnRleHQuZ2V0KCksIHRvV0sodGVtcG9yYXJ5Rm9sZGVyICsgc2Vw
YXJhdG9yICsgIkFwcGxpY2F0aW9uQ2FjaGUiKS5nZXQoKSk7CiAgICAgICAgIFdLQ29udGV4dFNl
dERhdGFiYXNlRGlyZWN0b3J5KG1fY29udGV4dC5nZXQoKSwgdG9XSyh0ZW1wb3JhcnlGb2xkZXIg
KyBzZXBhcmF0b3IgKyAiRGF0YWJhc2VzIikuZ2V0KCkpOwogICAgICAgICBXS0NvbnRleHRTZXRM
b2NhbFN0b3JhZ2VEaXJlY3RvcnkobV9jb250ZXh0LmdldCgpLCB0b1dLKHRlbXBvcmFyeUZvbGRl
ciArIHNlcGFyYXRvciArICJMb2NhbFN0b3JhZ2UiKS5nZXQoKSk7CiAgICAgICAgIFdLQ29udGV4
dFNldERpc2tDYWNoZURpcmVjdG9yeShtX2NvbnRleHQuZ2V0KCksIHRvV0sodGVtcG9yYXJ5Rm9s
ZGVyICsgc2VwYXJhdG9yICsgIkNhY2hlIikuZ2V0KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203791</attachid>
            <date>2013-06-05 03:41:25 -0700</date>
            <delta_ts>2013-06-11 01:40:09 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>bug-117143-20130605123958.patch</filename>
            <type>text/plain</type>
            <size>10525</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxMjA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggY2Q3ZmJhMzgwOWI5NTU1
YjkxNDU2ZDgwNzViYTI5MjdjNmMyZTBmMC4uZTQ3MzYwNmU2NDY1ZmE1OGRjNGI1NmMxYmMzYTc0
YzBiODJmOGFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA2LTA1ICBDc2Fi
YSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CisKKyAgICAgICAgTWFrZSBXVFIgdXNl
IGl0cyBvd24gdGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3IgYXBwbGljYXRpb24gY2FjaGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzE0MworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9DL1dLQ29udGV4dC5jcHA6CisgICAgICAgIChXS0NvbnRleHRTZXRBcHBsaWNhdGlvbkNhY2hl
RGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViQ29udGV4dDo6YXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSk6CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYkNvbnRleHQuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6c2V0QXBwbGlj
YXRpb25DYWNoZURpcmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9XZWJDb250ZXh0
RWZsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6cGxhdGZvcm1EZWZhdWx0QXBw
bGljYXRpb25DYWNoZURpcmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL2d0ay9XZWJDb250
ZXh0R3RrLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6cGxhdGZvcm1EZWZhdWx0
QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJD
b250ZXh0TWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1
bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvV2Vi
Q29udGV4dFF0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6cGxhdGZvcm1EZWZh
dWx0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSk6CisKIDIwMTMtMDYtMDQgIFNpbW9uIENvb3Bl
ciAgPHNjb29wZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFRpZ2h0ZW4gcGx1Z2luIHNhbmRib3gg
cHJvZmlsZXMgYWdhaW5zdCBzeW1saW5rIGF0dGFja3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKaW5kZXggNjFlYjI4ZjAyZDVjNWJkMDZkODQzNzlhNzZm
YmFjNzMwNzFkZjFhNy4uMTYyOWE1NjI3Mzk4ZWY2NjM1ZmMzYjQwZmU4ZDUzZWJiYWZiNDQ2YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKQEAgLTI5
NCw2ICsyOTQsMTEgQEAgdm9pZCBXS0NvbnRleHRBbGxvd1NwZWNpZmljSFRUUFNDZXJ0aWZpY2F0
ZUZvckhvc3QoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYsIFdLQ2UKICAgICB0b0ltcGwoY29udGV4
dFJlZiktPmFsbG93U3BlY2lmaWNIVFRQU0NlcnRpZmljYXRlRm9ySG9zdCh0b0ltcGwoY2VydGlm
aWNhdGVSZWYpLCB0b0ltcGwoaG9zdFJlZiktPnN0cmluZygpKTsKIH0KIAorV0tfRVhQT1JUIHZv
aWQgV0tDb250ZXh0U2V0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeShXS0NvbnRleHRSZWYgY29u
dGV4dFJlZiwgV0tTdHJpbmdSZWYgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSkKK3sKKyAgICB0
b0ltcGwoY29udGV4dFJlZiktPnNldEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkodG9JbXBsKGFw
cGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpLT5zdHJpbmcoKSk7Cit9CisKIHZvaWQgV0tDb250ZXh0
U2V0RGF0YWJhc2VEaXJlY3RvcnkoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYsIFdLU3RyaW5nUmVm
IGRhdGFiYXNlRGlyZWN0b3J5KQogewogICAgIHRvSW1wbChjb250ZXh0UmVmKS0+c2V0RGF0YWJh
c2VEaXJlY3RvcnkodG9JbXBsKGRhdGFiYXNlRGlyZWN0b3J5KS0+c3RyaW5nKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKaW5kZXgg
ZGFhODE3ZjQzNTE4NWI5N2ZmZWM3NTA5ZDQ1MTkwMzhlMmI2NjJjOS4uNzllN2Y3ZjI1MjA3YjFi
NDAwZTJiOGIyNzgxNmVhNWUyMmZkMTQ2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCkBAIC02MCw2ICs2MCw3IEBAIFdLX0VYUE9S
VCB2b2lkIFdLQ29udGV4dEFsbG93U3BlY2lmaWNIVFRQU0NlcnRpZmljYXRlRm9ySG9zdChXS0Nv
bnRleHRSZWYgY29udGV4CiAKIC8vIEZJWE1FOiBUaGVzZSBmdW5jdGlvbnMgYXJlIG9ubHkgZWZm
ZWN0aXZlIGlmIGNhbGxlZCBiZWZvcmUgdGhlIFdlYiBwcm9jZXNzIGlzIGxhdW5jaGVkLiBCdXQK
IC8vIHdlIHNob3VsZCByZWFsbHkgY2hhbmdlIHRoZXNlIHNldHRpbmdzIHRvIGJlIG9uIFdlYlBy
ZWZlcmVuY2VzIGFuZCBjaGFuZ2VhYmxlIGF0IHJ1bnRpbWUuCitXS19FWFBPUlQgdm9pZCBXS0Nv
bnRleHRTZXRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KFdLQ29udGV4dFJlZiBjb250ZXh0LCBX
S1N0cmluZ1JlZiBhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KTsKIFdLX0VYUE9SVCB2b2lkIFdL
Q29udGV4dFNldERhdGFiYXNlRGlyZWN0b3J5KFdLQ29udGV4dFJlZiBjb250ZXh0LCBXS1N0cmlu
Z1JlZiBkYXRhYmFzZURpcmVjdG9yeSk7CiBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRTZXRMb2Nh
bFN0b3JhZ2VEaXJlY3RvcnkoV0tDb250ZXh0UmVmIGNvbnRleHQsIFdLU3RyaW5nUmVmIGxvY2Fs
U3RvcmFnZURpcmVjdG9yeSk7CiBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRTZXREaXNrQ2FjaGVE
aXJlY3RvcnkoV0tDb250ZXh0UmVmIGNvbnRleHQsIFdLU3RyaW5nUmVmIGRpc2tDYWNoZURpcmVj
dG9yeSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKaW5kZXggNTM1ZmRl
OTUzNmU4MmNhNTEwYmYwZDhlZDAwY2JmOWZiOTYyZDMzMy4uMzFlZDI5OTNiOGFjNzE2MmRhYjA1
NTUyOTdhYmI3YWMzY2UzOGQxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYkNvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0
LmNwcApAQCAtMTAxNiw2ICsxMDE2LDE0IEBAIHZvaWQgV2ViQ29udGV4dDo6c3RvcE1lbW9yeVNh
bXBsZXIoKQogICAgIHNlbmRUb0FsbFByb2Nlc3NlcyhNZXNzYWdlczo6V2ViUHJvY2Vzczo6U3Rv
cE1lbW9yeVNhbXBsZXIoKSk7CiB9CiAKK1N0cmluZyBXZWJDb250ZXh0OjphcHBsaWNhdGlvbkNh
Y2hlRGlyZWN0b3J5KCkgY29uc3QKK3sKKyAgICBpZiAoIW1fb3ZlcnJpZGVBcHBsaWNhdGlvbkNh
Y2hlRGlyZWN0b3J5LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG1fb3ZlcnJpZGVBcHBsaWNh
dGlvbkNhY2hlRGlyZWN0b3J5OworCisgICAgcmV0dXJuIHBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0
aW9uQ2FjaGVEaXJlY3RvcnkoKTsKK30KKwogU3RyaW5nIFdlYkNvbnRleHQ6OmRhdGFiYXNlRGly
ZWN0b3J5KCkgY29uc3QKIHsKICAgICBpZiAoIW1fb3ZlcnJpZGVEYXRhYmFzZURpcmVjdG9yeS5p
c0VtcHR5KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4
dC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaAppbmRleCAzM2ZmNjNl
ZWFlMjI2YTg2NGQ3OTBlOTQ1YWFmOTQ2NjM4N2MxMmY5Li5jNDNkYzUzNjgxMjRjNGZjMWQwYTZk
MjBlYjc4ZTk1NTM3ODZlYjVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgK
QEAgLTE3MCw3ICsxNzAsNiBAQCBwdWJsaWM6CiAKICAgICBQbHVnaW5JbmZvU3RvcmUmIHBsdWdp
bkluZm9TdG9yZSgpIHsgcmV0dXJuIG1fcGx1Z2luSW5mb1N0b3JlOyB9CiAjZW5kaWYKLSAgICBT
dHJpbmcgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgpOwogCiAgICAgdm9pZCBzZXRBbHdheXNV
c2VzQ29tcGxleFRleHRDb2RlUGF0aChib29sKTsKICAgICB2b2lkIHNldFNob3VsZFVzZUZvbnRT
bW9vdGhpbmcoYm9vbCk7CkBAIC0yMjIsNiArMjIxLDcgQEAgcHVibGljOgogICAgIH07CiAgICAg
c3RhdGljIFN0YXRpc3RpY3MmIHN0YXRpc3RpY3MoKTsgICAgCiAKKyAgICB2b2lkIHNldEFwcGxp
Y2F0aW9uQ2FjaGVEaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBkaXIpIHsgbV9vdmVycmlkZUFwcGxp
Y2F0aW9uQ2FjaGVEaXJlY3RvcnkgPSBkaXI7IH0KICAgICB2b2lkIHNldERhdGFiYXNlRGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgZGlyKSB7IG1fb3ZlcnJpZGVEYXRhYmFzZURpcmVjdG9yeSA9IGRp
cjsgfQogICAgIHZvaWQgc2V0SWNvbkRhdGFiYXNlUGF0aChjb25zdCBTdHJpbmcmKTsKICAgICBT
dHJpbmcgaWNvbkRhdGFiYXNlUGF0aCgpIGNvbnN0OwpAQCAtMzQ4LDYgKzM0OCw5IEBAIHByaXZh
dGU6CiAgICAgc3RhdGljIHZvaWQgbGFuZ3VhZ2VDaGFuZ2VkKHZvaWQqIGNvbnRleHQpOwogICAg
IHZvaWQgbGFuZ3VhZ2VDaGFuZ2VkKCk7CiAKKyAgICBTdHJpbmcgYXBwbGljYXRpb25DYWNoZURp
cmVjdG9yeSgpIGNvbnN0OworICAgIFN0cmluZyBwbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNh
Y2hlRGlyZWN0b3J5KCkgY29uc3Q7CisKICAgICBTdHJpbmcgZGF0YWJhc2VEaXJlY3RvcnkoKSBj
b25zdDsKICAgICBTdHJpbmcgcGxhdGZvcm1EZWZhdWx0RGF0YWJhc2VEaXJlY3RvcnkoKSBjb25z
dDsKIApAQCAtNDU5LDYgKzQ2Miw3IEBAIHByaXZhdGU6CiAjZW5kaWYKICNlbmRpZgogCisgICAg
U3RyaW5nIG1fb3ZlcnJpZGVBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAgIFN0cmluZyBt
X292ZXJyaWRlRGF0YWJhc2VEaXJlY3Rvcnk7CiAgICAgU3RyaW5nIG1fb3ZlcnJpZGVJY29uRGF0
YWJhc2VQYXRoOwogICAgIFN0cmluZyBtX292ZXJyaWRlTG9jYWxTdG9yYWdlRGlyZWN0b3J5Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJDb250ZXh0RWZsLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViQ29udGV4dEVmbC5jcHAKaW5kZXgg
OTIyOTFkNGZhYzM2YWEwZjc3YmMwNWJlMTU2MTgyYzViZTUzM2NmYi4uZDJkY2EzZGZjODRhNGE3
MzcxYjIzMWQ5YzFhMWE3ZjFkZWU3ODY1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2VmbC9XZWJDb250ZXh0RWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvZWZsL1dlYkNvbnRleHRFZmwuY3BwCkBAIC04MCw3ICs4MCw3IEBAIHN0YXRpYyB2b2lkIGlu
aXRpYWxpemVJbnNwZWN0b3JTZXJ2ZXIoKQogI2VuZGlmCiB9CiAKLVN0cmluZyBXZWJDb250ZXh0
OjphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkKK1N0cmluZyBXZWJDb250ZXh0OjpwbGF0Zm9y
bURlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkgY29uc3QKIHsKICAgICByZXR1cm4g
U3RyaW5nOjpmcm9tVVRGOChlZnJlZXRfY2FjaGVfaG9tZV9nZXQoKSkgKyAiL1dlYktpdEVmbC9B
cHBsaWNhdGlvbnMiOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0
ay9XZWJDb250ZXh0R3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvV2ViQ29u
dGV4dEd0ay5jcHAKaW5kZXggYmE5MWYzY2UxZDJhYmJkMzJhNmVhMzY4ZTkwNDBiZDViNTc3NjU2
YS4uMjJiYTJmMTc2YzAzNWUzYWZmYjZlYWM1ZTU0ODc2ZmQ0M2FiNGViOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0ay9XZWJDb250ZXh0R3RrLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYkNvbnRleHRHdGsuY3BwCkBAIC03OCw3ICs3OCw3
IEBAIHN0YXRpYyB2b2lkIGluaXRJbnNwZWN0b3JTZXJ2ZXIoKQogI2VuZGlmCiB9CiAKLVdURjo6
U3RyaW5nIFdlYkNvbnRleHQ6OmFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKQorV1RGOjpTdHJp
bmcgV2ViQ29udGV4dDo6cGxhdGZvcm1EZWZhdWx0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgp
IGNvbnN0CiB7CiAgICAgR093blB0cjxnY2hhcj4gY2FjaGVEaXJlY3RvcnkoZ19idWlsZF9maWxl
bmFtZShnX2dldF91c2VyX2NhY2hlX2RpcigpLCAid2Via2l0Z3RrIiwgImFwcGxpY2F0aW9ucyIs
IE5VTEwpKTsKICAgICByZXR1cm4gV2ViQ29yZTo6ZmlsZW5hbWVUb1N0cmluZyhjYWNoZURpcmVj
dG9yeS5nZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dl
YkNvbnRleHRNYWMubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRN
YWMubW0KaW5kZXggM2QwYjQzODUyY2QwMTkzMzcxZDhkYjYzZmIzMzJiYjZmMmI0YWJiNC4uYTA3
ZmFhZTRmNGZjZDM1OTVlYTZlYzNkZTZmNmIwZmM4YzAzMDU1MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQpAQCAtMjU0LDI1ICsyNTQsMjAgQEAg
dm9pZCBXZWJDb250ZXh0OjpwbGF0Zm9ybUluaXRpYWxpemUoKQogICAgIGVuYWJsZU9jY2x1c2lv
bk5vdGlmaWNhdGlvbnMoKTsKIH0KIAotU3RyaW5nIFdlYkNvbnRleHQ6OmFwcGxpY2F0aW9uQ2Fj
aGVEaXJlY3RvcnkoKQorU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0
aW9uQ2FjaGVEaXJlY3RvcnkoKSBjb25zdAogewogICAgIE5TU3RyaW5nICphcHBOYW1lID0gW1tO
U0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXTsKICAgICBpZiAoIWFwcE5hbWUp
CiAgICAgICAgIGFwcE5hbWUgPSBbW05TUHJvY2Vzc0luZm8gcHJvY2Vzc0luZm9dIHByb2Nlc3NO
YW1lXTsKLSAgICAKKwogICAgIEFTU0VSVChhcHBOYW1lKTsKLSAgICAKLSAgICBOU1VzZXJEZWZh
dWx0cyAqZGVmYXVsdHMgPSBbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdOwot
ICAgIE5TU3RyaW5nICpjYWNoZURpciA9IFtkZWZhdWx0cyBvYmplY3RGb3JLZXk6V2ViS2l0TG9j
YWxDYWNoZURlZmF1bHRzS2V5XTsKIAotICAgIGlmICghY2FjaGVEaXIgfHwgIVtjYWNoZURpciBp
c0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKSB7Ci0gICAgICAgIGNoYXIgY2FjaGVEaXJl
Y3RvcnlbTUFYUEFUSExFTl07Ci0gICAgICAgIHNpemVfdCBjYWNoZURpcmVjdG9yeUxlbiA9IGNv
bmZzdHIoX0NTX0RBUldJTl9VU0VSX0NBQ0hFX0RJUiwgY2FjaGVEaXJlY3RvcnksIE1BWFBBVEhM
RU4pOwotICAgIAotICAgICAgICBpZiAoY2FjaGVEaXJlY3RvcnlMZW4pCi0gICAgICAgICAgICBj
YWNoZURpciA9IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gc3RyaW5nV2l0aEZpbGVT
eXN0ZW1SZXByZXNlbnRhdGlvbjpjYWNoZURpcmVjdG9yeSBsZW5ndGg6Y2FjaGVEaXJlY3RvcnlM
ZW4gLSAxXTsKLSAgICB9CisgICAgY2hhciBjYWNoZURpcmVjdG9yeVtNQVhQQVRITEVOXTsKKyAg
ICBzaXplX3QgY2FjaGVEaXJlY3RvcnlMZW4gPSBjb25mc3RyKF9DU19EQVJXSU5fVVNFUl9DQUNI
RV9ESVIsIGNhY2hlRGlyZWN0b3J5LCBNQVhQQVRITEVOKTsKKyAgICBpZiAoIWNhY2hlRGlyZWN0
b3J5TGVuKQorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CiAKKyAgICBOU1N0cmluZyAqY2FjaGVE
aXIgPSBbW05TRmlsZU1hbmFnZXIgZGVmYXVsdE1hbmFnZXJdIHN0cmluZ1dpdGhGaWxlU3lzdGVt
UmVwcmVzZW50YXRpb246Y2FjaGVEaXJlY3RvcnkgbGVuZ3RoOmNhY2hlRGlyZWN0b3J5TGVuIC0g
MV07CiAgICAgcmV0dXJuIFtjYWNoZURpciBzdHJpbmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6
YXBwTmFtZV07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9X
ZWJDb250ZXh0UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYkNvbnRleHRR
dC5jcHAKaW5kZXggOTA4MDBhMzU1M2U2Nzk2NTI3ZDU4MDk2MGQ4NmUyZDgyYjAwZWI4OC4uNDQ4
MjdlZWQ1YzIxY2JhNDBkNjRkZmZkZGFhY2ViOWJhZjljYjg4ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYkNvbnRleHRRdC5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL3F0L1dlYkNvbnRleHRRdC5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFt
ZXNwYWNlIFdlYktpdCB7CiAKLVN0cmluZyBXZWJDb250ZXh0OjphcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5KCkKK1N0cmluZyBXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNh
Y2hlRGlyZWN0b3J5KCkgY29uc3QKIHsKICAgICBjb25zdCBTdHJpbmcgY2FjaGVEaXJlY3Rvcnkg
PSBXZWJDb3JlOjpjYWNoZVN0b3JhZ2UoKS5jYWNoZURpcmVjdG9yeSgpOwogCmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjgwMTlkMDRlMjQ4NjJj
Y2FlYjk4ZWZjMjQ1MTNjNDUyNTk3YWExMy4uZGM3MmZjM2QxYTQyNGIyN2FkNmExOTU3MDAyNDMy
NGFlYzFjYTEzYiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEzLTA2LTA1ICBDc2FiYSBPc3p0cm9nb27DoWMgIDxv
c3N5QHdlYmtpdC5vcmc+CisKKyAgICAgICAgTWFrZSBXVFIgdXNlIGl0cyBvd24gdGVtcG9yYXJ5
IGRpcmVjdG9yeSBmb3IgYXBwbGljYXRpb24gY2FjaGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzE0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxl
ci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjppbml0aWFsaXplKToKKwogMjAx
My0wNi0wNSAgRGFyaXVzeiBGcmFua2lld2ljeiAgPGQuZnJhbmtpZXdpY0BzYW1zdW5nLmNvbT4K
IAogICAgICAgICBCYWQgdmFsdWUgaW4gdGVzdHMgY291bnRlciBhdCBuZXctcnVuLXdlYmtpdC10
ZXN0cwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5j
cHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAppbmRleCBiN2M1
NDllNzE4MTZjNDRmNzg1MWQwMDFhNzZkODU0YzJlODA3YTdlLi4wOTY0N2ExNjAxNzM4NDE3Y2Zm
ZGYwMzY2ZTRkOTkxODAzZDY0OTIzIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVy
L1Rlc3RDb250cm9sbGVyLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250
cm9sbGVyLmNwcApAQCAtMzY1LDYgKzM2NSw3IEBAIHZvaWQgVGVzdENvbnRyb2xsZXI6OmluaXRp
YWxpemUoaW50IGFyZ2MsIGNvbnN0IGNoYXIqIGFyZ3ZbXSkKICAgICAgICAgY29uc3QgY2hhciBz
ZXBhcmF0b3IgPSAnLyc7CiAjZW5kaWYKIAorICAgICAgICBXS0NvbnRleHRTZXRBcHBsaWNhdGlv
bkNhY2hlRGlyZWN0b3J5KG1fY29udGV4dC5nZXQoKSwgdG9XSyh0ZW1wb3JhcnlGb2xkZXIgKyBz
ZXBhcmF0b3IgKyAiQXBwbGljYXRpb25DYWNoZSIpLmdldCgpKTsKICAgICAgICAgV0tDb250ZXh0
U2V0RGF0YWJhc2VEaXJlY3RvcnkobV9jb250ZXh0LmdldCgpLCB0b1dLKHRlbXBvcmFyeUZvbGRl
ciArIHNlcGFyYXRvciArICJEYXRhYmFzZXMiKS5nZXQoKSk7CiAgICAgICAgIFdLQ29udGV4dFNl
dExvY2FsU3RvcmFnZURpcmVjdG9yeShtX2NvbnRleHQuZ2V0KCksIHRvV0sodGVtcG9yYXJ5Rm9s
ZGVyICsgc2VwYXJhdG9yICsgIkxvY2FsU3RvcmFnZSIpLmdldCgpKTsKICAgICAgICAgV0tDb250
ZXh0U2V0RGlza0NhY2hlRGlyZWN0b3J5KG1fY29udGV4dC5nZXQoKSwgdG9XSyh0ZW1wb3JhcnlG
b2xkZXIgKyBzZXBhcmF0b3IgKyAiQ2FjaGUiKS5nZXQoKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>