<?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>62846</bug_id>
          
          <creation_ts>2011-06-17 00:04:38 -0700</creation_ts>
          <short_desc>Detect mixed-scripting involving https -&gt; http redirects</short_desc>
          <delta_ts>2011-06-17 12:11:31 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Evans">cevans</reporter>
          <assigned_to name="Chris Evans">cevans</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>422449</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Evans">cevans</who>
    <bug_when>2011-06-17 00:04:38 -0700</bug_when>
    <thetext>The current detection is thwarted by a redirect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422450</commentid>
    <comment_count>1</comment_count>
      <attachid>97550</attachid>
    <who name="Chris Evans">cevans</who>
    <bug_when>2011-06-17 00:11:59 -0700</bug_when>
    <thetext>Created attachment 97550
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422451</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-17 00:14:39 -0700</bug_when>
    <thetext>Attachment 97550 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/http...&quot; exit_code: 1

Source/WebCore/loader/cache/CachedResourceLoader.cpp:202:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422453</commentid>
    <comment_count>3</comment_count>
      <attachid>97551</attachid>
    <who name="Chris Evans">cevans</who>
    <bug_when>2011-06-17 00:17:42 -0700</bug_when>
    <thetext>Created attachment 97551
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422454</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Evans">cevans</who>
    <bug_when>2011-06-17 00:18:31 -0700</bug_when>
    <thetext>(Style nit fixed in 2nd patch)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422505</commentid>
    <comment_count>5</comment_count>
      <attachid>97551</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-17 02:28:52 -0700</bug_when>
    <thetext>Comment on attachment 97551
Patch

Attachment 97551 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/8881481</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422659</commentid>
    <comment_count>6</comment_count>
      <attachid>97607</attachid>
    <who name="Chris Evans">cevans</who>
    <bug_when>2011-06-17 09:27:38 -0700</bug_when>
    <thetext>Created attachment 97607
Patch

Fix Mac compile warning.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422664</commentid>
    <comment_count>7</comment_count>
      <attachid>97607</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-06-17 09:36:44 -0700</bug_when>
    <thetext>Comment on attachment 97607
Patch

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

This isn&apos;t a complete solution, but it&apos;s a good step forward.

&gt; Source/WebCore/loader/cache/CachedResourceLoader.cpp:202
&gt; +bool CachedResourceLoader::checkMixedContent(CachedResource::Type type, const KURL&amp; url) const

I&apos;d call this function checkInsecureContent to be consistent with the other terminology we&apos;re using.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422791</commentid>
    <comment_count>8</comment_count>
      <attachid>97629</attachid>
    <who name="Chris Evans">cevans</who>
    <bug_when>2011-06-17 11:45:35 -0700</bug_when>
    <thetext>Created attachment 97629
Patch

Fix function name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422815</commentid>
    <comment_count>9</comment_count>
      <attachid>97629</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-17 12:11:26 -0700</bug_when>
    <thetext>Comment on attachment 97629
Patch

Clearing flags on attachment: 97629

Committed r89155: &lt;http://trac.webkit.org/changeset/89155&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422816</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-17 12:11:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97550</attachid>
            <date>2011-06-17 00:11:59 -0700</date>
            <delta_ts>2011-06-17 00:17:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>62846_1.diff</filename>
            <type>text/plain</type>
            <size>8943</size>
            <attacher name="Chris Evans">cevans</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg5MTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDYtMTYgIENocmlzIEV2
YW5zICA8Y2V2YW5zQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBEZXRlY3QgbWl4ZWQtc2NyaXB0aW5nIGludm9sdmluZyBodHRw
cyAtPiBodHRwIHJlZGlyZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NjI4NDYKKworICAgICAgICBUZXN0OiBodHRwL3Rlc3RzL3NlY3VyaXR5L21p
eGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1pZnJhbWUuaHRtbAor
CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpjaGVja01peGVkQ29udGVudCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdCk6IGJyZWFr
IG91dCBtaXhlZCBjb250ZW50IGxvZ2ljLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJl
cXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojp3aWxs
U2VuZFJlcXVlc3QpOiBjaGVjayB0aGUgcmVkaXJlY3QgdGFyZ2V0IGZvciBwb3NzaWJsZSBtaXhl
ZCBjb250ZW50IGlzc3Vlcy4KKwogMjAxMS0wNi0xNiAgWXV0YSBLaXRhbXVyYSAgPHl1dGFrQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByODkwNzMuCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZUxvYWRlci5jcHAJKHJldmlzaW9uIDg5MDU1KQorKysgU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTk5LDYgKzE5
OSw0MCBAQAogfQogI2VuZGlmCiAKK2Jvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNoZWNrTWl4
ZWRDb250ZW50KENhY2hlZFJlc291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IEtVUkwmIHVybCkgY29u
c3QgeworICAgIHN3aXRjaCAodHlwZSkgeworICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNjcmlw
dDoKKyNpZiBFTkFCTEUoWFNMVCkKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpYU0xTdHlsZVNo
ZWV0OgorI2VuZGlmCisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6Q1NTU3R5bGVTaGVldDoKKyAg
ICAgICAgLy8gVGhlc2UgcmVzb3VyY2UgY2FuIGluamVjdCBzY3JpcHQgaW50byB0aGUgY3VycmVu
dCBkb2N1bWVudCAoU2NyaXB0LAorICAgICAgICAvLyBYU0wpIG9yIGV4ZmlsdHJhdGUgdGhlIGNv
bnRlbnQgb2YgdGhlIGN1cnJlbnQgZG9jdW1lbnQgKENTUykuCisgICAgICAgIGlmIChGcmFtZSog
ZiA9IGZyYW1lKCkpCisgICAgICAgICAgICBpZiAoIWYtPmxvYWRlcigpLT5jaGVja0lmUnVuSW5z
ZWN1cmVDb250ZW50KG1fZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCisgICAgICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBicmVhazsKKyAgICBjYXNlIENhY2hlZFJl
c291cmNlOjpJbWFnZVJlc291cmNlOgorICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkZvbnRSZXNv
dXJjZTogeworICAgICAgICAvLyBUaGVzZSByZXNvdXJjZXMgY2FuIGNvcnJ1cHQgb25seSB0aGUg
ZnJhbWUncyBwaXhlbHMuCisgICAgICAgIGlmIChGcmFtZSogZiA9IGZyYW1lKCkpIHsKKyAgICAg
ICAgICAgIEZyYW1lKiB0b3AgPSBmLT50cmVlKCktPnRvcCgpOworICAgICAgICAgICAgaWYgKCF0
b3AtPmxvYWRlcigpLT5jaGVja0lmRGlzcGxheUluc2VjdXJlQ29udGVudCh0b3AtPmRvY3VtZW50
KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgICAgICB9CisgICAgICAgIGJyZWFrOworICAgIH0KKyNpZiBFTkFCTEUoTElOS19QUkVG
RVRDSCkKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpMaW5rUHJlZmV0Y2g6CisgICAgY2FzZSBD
YWNoZWRSZXNvdXJjZTo6TGlua1ByZXJlbmRlcjoKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpM
aW5rU3VicmVzb3VyY2U6CisgICAgICAgIC8vIFByZWZldGNoIGNhbm5vdCBhZmZlY3QgdGhlIGN1
cnJlbnQgZG9jdW1lbnQuCisgICAgICAgIGJyZWFrOworI2VuZGlmCisgICAgfQorICAgIHJldHVy
biB0cnVlOworfQorCiBib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjYW5SZXF1ZXN0KENhY2hl
ZFJlc291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IEtVUkwmIHVybCwgYm9vbCBmb3JQcmVsb2FkKQog
ewogICAgIGlmICghZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlzcGxheSh1cmwp
KSB7CkBAIC0yMzcsNDIgKzI3MSwxMCBAQAogICAgIC8vIEdpdmVuIHRoYXQgdGhlIGxvYWQgaXMg
YWxsb3dlZCBieSB0aGUgc2FtZS1vcmlnaW4gcG9saWN5LCB3ZSBzaG91bGQKICAgICAvLyBjaGVj
ayB3aGV0aGVyIHRoZSBsb2FkIHBhc3NlcyB0aGUgbWl4ZWQtY29udGVudCBwb2xpY3kuCiAgICAg
Ly8KLSAgICAvLyBOb3RlOiBDdXJyZW50bHksIHdlIGFsd2F5cyBhbGxvdyBtaXhlZCBjb250ZW50
LCBidXQgd2UgZ2VuZXJhdGUgYQotICAgIC8vICAgICAgIGNhbGxiYWNrIHRvIHRoZSBGcmFtZUxv
YWRlckNsaWVudCBpbiBjYXNlIHRoZSBlbWJlZGRlciB3YW50cyB0bwotICAgIC8vICAgICAgIHVw
ZGF0ZSBhbnkgc2VjdXJpdHkgaW5kaWNhdG9ycy4KLSAgICAvLyAKICAgICAvLyBGSVhNRTogU2hv
dWxkIHdlIGNvbnNpZGVyIGZvclByZWxvYWQgaGVyZT8KLSAgICAvLwotICAgIHN3aXRjaCAodHlw
ZSkgewotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNjcmlwdDoKLSNpZiBFTkFCTEUoWFNMVCkK
LSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpYU0xTdHlsZVNoZWV0OgotI2VuZGlmCi0gICAgY2Fz
ZSBDYWNoZWRSZXNvdXJjZTo6Q1NTU3R5bGVTaGVldDoKLSAgICAgICAgLy8gVGhlc2UgcmVzb3Vy
Y2UgY2FuIGluamVjdCBzY3JpcHQgaW50byB0aGUgY3VycmVudCBkb2N1bWVudCAoU2NyaXB0LAot
ICAgICAgICAvLyBYU0wpIG9yIGV4ZmlsdHJhdGUgdGhlIGNvbnRlbnQgb2YgdGhlIGN1cnJlbnQg
ZG9jdW1lbnQgKENTUykuCi0gICAgICAgIGlmIChGcmFtZSogZiA9IGZyYW1lKCkpCi0gICAgICAg
ICAgICBpZiAoIWYtPmxvYWRlcigpLT5jaGVja0lmUnVuSW5zZWN1cmVDb250ZW50KG1fZG9jdW1l
bnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpJbWFnZVJlc291cmNl
OgotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkZvbnRSZXNvdXJjZTogewotICAgICAgICAvLyBU
aGVzZSByZXNvdXJjZXMgY2FuIGNvcnJ1cHQgb25seSB0aGUgZnJhbWUncyBwaXhlbHMuCi0gICAg
ICAgIGlmIChGcmFtZSogZiA9IGZyYW1lKCkpIHsKLSAgICAgICAgICAgIEZyYW1lKiB0b3AgPSBm
LT50cmVlKCktPnRvcCgpOwotICAgICAgICAgICAgaWYgKCF0b3AtPmxvYWRlcigpLT5jaGVja0lm
RGlzcGxheUluc2VjdXJlQ29udGVudCh0b3AtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCks
IHVybCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9Ci0gICAgICAg
IGJyZWFrOwotICAgIH0KLSNpZiBFTkFCTEUoTElOS19QUkVGRVRDSCkKLSAgICBjYXNlIENhY2hl
ZFJlc291cmNlOjpMaW5rUHJlZmV0Y2g6Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6TGlua1By
ZXJlbmRlcjoKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpMaW5rU3VicmVzb3VyY2U6Ci0gICAg
ICAgIC8vIFByZWZldGNoIGNhbm5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgZG9jdW1lbnQuCi0gICAg
ICAgIGJyZWFrOwotI2VuZGlmCi0gICAgfQorICAgIGlmICghY2hlY2tNaXhlZENvbnRlbnQodHlw
ZSwgdXJsKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgLy8gRklYTUU6IENvbnNpZGVy
IGxldHRpbmcgdGhlIGVtYmVkZGVyIGJsb2NrIG1peGVkIGNvbnRlbnQgbG9hZHMuCiAKICAgICBz
d2l0Y2ggKHR5cGUpIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCShyZXZpc2lvbiA4OTA1NSkKKysrIFNvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xMDIsNiArMTAyLDcgQEAKICAgICB2b2lkIHByZWxvYWQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUs
IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgY2hhcnNldCwgYm9vbCByZWZlcmVuY2Vk
RnJvbUJvZHkpOwogICAgIHZvaWQgY2hlY2tGb3JQZW5kaW5nUHJlbG9hZHMoKTsKICAgICB2b2lk
IHByaW50UHJlbG9hZFN0YXRzKCk7CisgICAgYm9vbCBjaGVja01peGVkQ29udGVudChDYWNoZWRS
ZXNvdXJjZTo6VHlwZSwgY29uc3QgS1VSTCYpIGNvbnN0OwogICAgIAogcHJpdmF0ZToKICAgICBD
YWNoZWRSZXNvdXJjZSogcmVxdWVzdFJlc291cmNlKENhY2hlZFJlc291cmNlOjpUeXBlLCBSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQsIFJlc291cmNlTG9hZFByaW9yaXR5
ID0gUmVzb3VyY2VMb2FkUHJpb3JpdHlVbnJlc29sdmVkLCBib29sIGlzUHJlbG9hZCA9IGZhbHNl
KTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVl
c3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZVJlcXVlc3QuY3BwCShyZXZpc2lvbiA4OTA1NSkKKysrIFNvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
MzQsOCArMTM0LDEyIEBACiAgICAgcmV0dXJuIHJlcXVlc3QucmVsZWFzZSgpOwogfQogCi12b2lk
IENhY2hlZFJlc291cmNlUmVxdWVzdDo6d2lsbFNlbmRSZXF1ZXN0KFN1YnJlc291cmNlTG9hZGVy
KiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpCit2b2lkIENhY2hl
ZFJlc291cmNlUmVxdWVzdDo6d2lsbFNlbmRSZXF1ZXN0KFN1YnJlc291cmNlTG9hZGVyKiBsb2Fk
ZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXMpCiB7
CisgICAgaWYgKCFtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5jaGVja01peGVkQ29udGVudChtX3Jl
c291cmNlLT50eXBlKCksIHJlcS51cmwoKSkpIHsKKyAgICAgICAgbG9hZGVyLT5jYW5jZWwoKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KICAgICBtX3Jlc291cmNlLT5zZXRSZXF1ZXN0ZWRGcm9t
TmV0d29ya2luZ0xheWVyKCk7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0LWluLWlmcmFt
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3JpcHQtaW4taWZyYW1l
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gODkwNTUpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1p
ZnJhbWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEsOSBAQAogZnJhbWUg
IjwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+IiAtIGRpZFN0YXJ0UHJvdmlzaW9uYWxM
b2FkRm9yRnJhbWUKIG1haW4gZnJhbWUgLSBkaWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZQog
ZnJhbWUgIjwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+IiAtIGRpZENvbW1pdExvYWRG
b3JGcmFtZQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFRoZSBwYWdlIGF0IGh0dHBzOi8vMTI3
LjAuMC4xOjg0NDMvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3Jlc291cmNlcy9mcmFtZS13aXRoLXJl
ZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0Lmh0bWwgcmFuIGluc2VjdXJlIGNvbnRlbnQgZnJv
bSBodHRwOi8vMTI3LjAuMC4xOjgwODAvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3Jlc291cmNlcy9z
Y3JpcHQuanMuCisKK2RpZFJ1bkluc2VjdXJlQ29udGVudAogZnJhbWUgIjwhLS1mcmFtZVBhdGgg
Ly88IS0tZnJhbWUwLS0+LS0+IiAtIGRpZEZpbmlzaERvY3VtZW50TG9hZEZvckZyYW1lCiBmcmFt
ZSAiPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4iIC0gZGlkSGFuZGxlT25sb2FkRXZl
bnRzRm9yRnJhbWUKIG1haW4gZnJhbWUgLSBkaWRIYW5kbGVPbmxvYWRFdmVudHNGb3JGcmFtZQpA
QCAtOCw2ICsxMSw0IEBACiBtYWluIGZyYW1lIC0gZGlkRmluaXNoTG9hZEZvckZyYW1lCiBUaGlz
IHRlc3QgbG9hZHMgYSBzZWN1cmUgaWZyYW1lIHRoYXQgbG9hZHMgYW4gaW5zZWN1cmUgc2NyaXB0
IChidXQgd2l0aCBhIHRyaWNreSByZWRpcmVjdCkuIFdlIHNob3VsZCB0cmlnZ2VyIGEgbWl4ZWQg
Y29udGVudCBjYWxsYmFjayBiZWNhdXNlIGFuIGFjdGl2ZSBuZXR3b3JrIGF0dGFja2VyIGNhbiBl
bmQgdXAgY29udHJvbGluZyB0aGUgc2NyaXB0LgogCi1GSVhNRTogVGhpcyB0ZXN0IGN1cnJlbnQg
ZG9lcyBub3QgdHJpZ2dlciBhIG1peGVkIGNvbnRlbnQgY2FsbGJhY2shCiAKLQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMt
dG8taHR0cC1zY3JpcHQtaW4taWZyYW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1z
Y3JpcHQtaW4taWZyYW1lLmh0bWwJKHJldmlzaW9uIDg5MDU1KQorKysgTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3Jp
cHQtaW4taWZyYW1lLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksOCArOSw2IEBACiA8cD5UaGlz
IHRlc3QgbG9hZHMgYSBzZWN1cmUgaWZyYW1lIHRoYXQgbG9hZHMgYW4gaW5zZWN1cmUgc2NyaXB0
IChidXQgd2l0aCBhCiB0cmlja3kgcmVkaXJlY3QpLiAgV2Ugc2hvdWxkIHRyaWdnZXIgYSBtaXhl
ZCBjb250ZW50IGNhbGxiYWNrIGJlY2F1c2UgYW4gYWN0aXZlCiBuZXR3b3JrIGF0dGFja2VyIGNh
biBlbmQgdXAgY29udHJvbGluZyB0aGUgc2NyaXB0LjwvcD4KLQotPHA+RklYTUU6IFRoaXMgdGVz
dCBjdXJyZW50IGRvZXMgbm90IHRyaWdnZXIgYSBtaXhlZCBjb250ZW50IGNhbGxiYWNrITwvcD4K
IDxpZnJhbWUgc3JjPSJodHRwczovLzEyNy4wLjAuMTo4NDQzL3NlY3VyaXR5L21peGVkQ29udGVu
dC9yZXNvdXJjZXMvZnJhbWUtd2l0aC1yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC5odG1s
IjsKID48L2lmcmFtZT4KIDwvYm9keT4KSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDg5MTIyKQorKysgTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEt
MDYtMTcgIENocmlzIEV2YW5zICA8Y2V2YW5zQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEZXRlY3QgbWl4ZWQtc2NyaXB0aW5n
IGludm9sdmluZyBodHRwcyAtPiBodHRwIHJlZGlyZWN0cworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjI4NDYKKworICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0LWluLWlm
cmFtZS1leHBlY3RlZC50eHQ6IFVwZGF0ZSBleHBlY3RhdGlvbi4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1p
bi1pZnJhbWUuaHRtbDogUmVtb3ZlIEZJWE1FIGFzIHRoZSB0ZXN0IGlzIG5vdyB3b3JraW5nIGFz
IGV4cGVjdGVkLgorCiAyMDExLTA2LTE2ICBNT1JJVEEgSGFqaW1lIDxtb3JyaXRhQGdvb2dsZS5j
b20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBleHBlY3RhdGlvbnMgdXBkYXRlIGZvcjoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97551</attachid>
            <date>2011-06-17 00:17:42 -0700</date>
            <delta_ts>2011-06-17 09:27:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>62846_2.diff</filename>
            <type>text/plain</type>
            <size>8944</size>
            <attacher name="Chris Evans">cevans</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg5MTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDYtMTYgIENocmlzIEV2
YW5zICA8Y2V2YW5zQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBEZXRlY3QgbWl4ZWQtc2NyaXB0aW5nIGludm9sdmluZyBodHRw
cyAtPiBodHRwIHJlZGlyZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NjI4NDYKKworICAgICAgICBUZXN0OiBodHRwL3Rlc3RzL3NlY3VyaXR5L21p
eGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1pZnJhbWUuaHRtbAor
CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpjaGVja01peGVkQ29udGVudCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdCk6IGJyZWFr
IG91dCBtaXhlZCBjb250ZW50IGxvZ2ljLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJl
cXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojp3aWxs
U2VuZFJlcXVlc3QpOiBjaGVjayB0aGUgcmVkaXJlY3QgdGFyZ2V0IGZvciBwb3NzaWJsZSBtaXhl
ZCBjb250ZW50IGlzc3Vlcy4KKwogMjAxMS0wNi0xNiAgWXV0YSBLaXRhbXVyYSAgPHl1dGFrQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByODkwNzMuCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZUxvYWRlci5jcHAJKHJldmlzaW9uIDg5MDU1KQorKysgU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTk5LDYgKzE5
OSw0MSBAQAogfQogI2VuZGlmCiAKK2Jvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNoZWNrTWl4
ZWRDb250ZW50KENhY2hlZFJlc291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IEtVUkwmIHVybCkgY29u
c3QKK3sKKyAgICBzd2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpTY3Jp
cHQ6CisjaWYgRU5BQkxFKFhTTFQpCisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6WFNMU3R5bGVT
aGVldDoKKyNlbmRpZgorICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQ6Cisg
ICAgICAgIC8vIFRoZXNlIHJlc291cmNlIGNhbiBpbmplY3Qgc2NyaXB0IGludG8gdGhlIGN1cnJl
bnQgZG9jdW1lbnQgKFNjcmlwdCwKKyAgICAgICAgLy8gWFNMKSBvciBleGZpbHRyYXRlIHRoZSBj
b250ZW50IG9mIHRoZSBjdXJyZW50IGRvY3VtZW50IChDU1MpLgorICAgICAgICBpZiAoRnJhbWUq
IGYgPSBmcmFtZSgpKQorICAgICAgICAgICAgaWYgKCFmLT5sb2FkZXIoKS0+Y2hlY2tJZlJ1bklu
c2VjdXJlQ29udGVudChtX2RvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQorICAgICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBDYWNoZWRS
ZXNvdXJjZTo6SW1hZ2VSZXNvdXJjZToKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpGb250UmVz
b3VyY2U6IHsKKyAgICAgICAgLy8gVGhlc2UgcmVzb3VyY2VzIGNhbiBjb3JydXB0IG9ubHkgdGhl
IGZyYW1lJ3MgcGl4ZWxzLgorICAgICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgpKSB7CisgICAg
ICAgICAgICBGcmFtZSogdG9wID0gZi0+dHJlZSgpLT50b3AoKTsKKyAgICAgICAgICAgIGlmICgh
dG9wLT5sb2FkZXIoKS0+Y2hlY2tJZkRpc3BsYXlJbnNlY3VyZUNvbnRlbnQodG9wLT5kb2N1bWVu
dCgpLT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQorICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICB9CisjaWYgRU5BQkxFKExJTktfUFJF
RkVUQ0gpCisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6TGlua1ByZWZldGNoOgorICAgIGNhc2Ug
Q2FjaGVkUmVzb3VyY2U6OkxpbmtQcmVyZW5kZXI6CisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6
TGlua1N1YnJlc291cmNlOgorICAgICAgICAvLyBQcmVmZXRjaCBjYW5ub3QgYWZmZWN0IHRoZSBj
dXJyZW50IGRvY3VtZW50LgorICAgICAgICBicmVhazsKKyNlbmRpZgorICAgIH0KKyAgICByZXR1
cm4gdHJ1ZTsKK30KKwogYm9vbCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNo
ZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBjb25zdCBLVVJMJiB1cmwsIGJvb2wgZm9yUHJlbG9hZCkK
IHsKICAgICBpZiAoIWRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkRpc3BsYXkodXJs
KSkgewpAQCAtMjM3LDQyICsyNzIsMTAgQEAKICAgICAvLyBHaXZlbiB0aGF0IHRoZSBsb2FkIGlz
IGFsbG93ZWQgYnkgdGhlIHNhbWUtb3JpZ2luIHBvbGljeSwgd2Ugc2hvdWxkCiAgICAgLy8gY2hl
Y2sgd2hldGhlciB0aGUgbG9hZCBwYXNzZXMgdGhlIG1peGVkLWNvbnRlbnQgcG9saWN5LgogICAg
IC8vCi0gICAgLy8gTm90ZTogQ3VycmVudGx5LCB3ZSBhbHdheXMgYWxsb3cgbWl4ZWQgY29udGVu
dCwgYnV0IHdlIGdlbmVyYXRlIGEKLSAgICAvLyAgICAgICBjYWxsYmFjayB0byB0aGUgRnJhbWVM
b2FkZXJDbGllbnQgaW4gY2FzZSB0aGUgZW1iZWRkZXIgd2FudHMgdG8KLSAgICAvLyAgICAgICB1
cGRhdGUgYW55IHNlY3VyaXR5IGluZGljYXRvcnMuCi0gICAgLy8gCiAgICAgLy8gRklYTUU6IFNo
b3VsZCB3ZSBjb25zaWRlciBmb3JQcmVsb2FkIGhlcmU/Ci0gICAgLy8KLSAgICBzd2l0Y2ggKHR5
cGUpIHsKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpTY3JpcHQ6Ci0jaWYgRU5BQkxFKFhTTFQp
Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6WFNMU3R5bGVTaGVldDoKLSNlbmRpZgotICAgIGNh
c2UgQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQ6Ci0gICAgICAgIC8vIFRoZXNlIHJlc291
cmNlIGNhbiBpbmplY3Qgc2NyaXB0IGludG8gdGhlIGN1cnJlbnQgZG9jdW1lbnQgKFNjcmlwdCwK
LSAgICAgICAgLy8gWFNMKSBvciBleGZpbHRyYXRlIHRoZSBjb250ZW50IG9mIHRoZSBjdXJyZW50
IGRvY3VtZW50IChDU1MpLgotICAgICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgpKQotICAgICAg
ICAgICAgaWYgKCFmLT5sb2FkZXIoKS0+Y2hlY2tJZlJ1bkluc2VjdXJlQ29udGVudChtX2RvY3Vt
ZW50LT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6SW1hZ2VSZXNvdXJj
ZToKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpGb250UmVzb3VyY2U6IHsKLSAgICAgICAgLy8g
VGhlc2UgcmVzb3VyY2VzIGNhbiBjb3JydXB0IG9ubHkgdGhlIGZyYW1lJ3MgcGl4ZWxzLgotICAg
ICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgpKSB7Ci0gICAgICAgICAgICBGcmFtZSogdG9wID0g
Zi0+dHJlZSgpLT50b3AoKTsKLSAgICAgICAgICAgIGlmICghdG9wLT5sb2FkZXIoKS0+Y2hlY2tJ
ZkRpc3BsYXlJbnNlY3VyZUNvbnRlbnQodG9wLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigp
LCB1cmwpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgfQotICAgICAg
ICBicmVhazsKLSAgICB9Ci0jaWYgRU5BQkxFKExJTktfUFJFRkVUQ0gpCi0gICAgY2FzZSBDYWNo
ZWRSZXNvdXJjZTo6TGlua1ByZWZldGNoOgotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkxpbmtQ
cmVyZW5kZXI6Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6TGlua1N1YnJlc291cmNlOgotICAg
ICAgICAvLyBQcmVmZXRjaCBjYW5ub3QgYWZmZWN0IHRoZSBjdXJyZW50IGRvY3VtZW50LgotICAg
ICAgICBicmVhazsKLSNlbmRpZgotICAgIH0KKyAgICBpZiAoIWNoZWNrTWl4ZWRDb250ZW50KHR5
cGUsIHVybCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIC8vIEZJWE1FOiBDb25zaWRl
ciBsZXR0aW5nIHRoZSBlbWJlZGRlciBibG9jayBtaXhlZCBjb250ZW50IGxvYWRzLgogCiAgICAg
c3dpdGNoICh0eXBlKSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAkocmV2aXNpb24gODkwNTUpCisrKyBTb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAkod29ya2luZyBjb3B5KQpA
QCAtMTAyLDYgKzEwMiw3IEBACiAgICAgdm9pZCBwcmVsb2FkKENhY2hlZFJlc291cmNlOjpUeXBl
LCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQsIGJvb2wgcmVmZXJlbmNl
ZEZyb21Cb2R5KTsKICAgICB2b2lkIGNoZWNrRm9yUGVuZGluZ1ByZWxvYWRzKCk7CiAgICAgdm9p
ZCBwcmludFByZWxvYWRTdGF0cygpOworICAgIGJvb2wgY2hlY2tNaXhlZENvbnRlbnQoQ2FjaGVk
UmVzb3VyY2U6OlR5cGUsIGNvbnN0IEtVUkwmKSBjb25zdDsKICAgICAKIHByaXZhdGU6CiAgICAg
Q2FjaGVkUmVzb3VyY2UqIHJlcXVlc3RSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBjaGFyc2V0LCBSZXNvdXJjZUxvYWRQcmlvcml0
eSA9IFJlc291cmNlTG9hZFByaW9yaXR5VW5yZXNvbHZlZCwgYm9vbCBpc1ByZWxvYWQgPSBmYWxz
ZSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0LmNwcAkocmV2aXNpb24gODkwNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTM0LDggKzEzNCwxMiBAQAogICAgIHJldHVybiByZXF1ZXN0LnJlbGVhc2UoKTsKIH0KIAotdm9p
ZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OndpbGxTZW5kUmVxdWVzdChTdWJyZXNvdXJjZUxvYWRl
ciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKQordm9pZCBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3Q6OndpbGxTZW5kUmVxdWVzdChTdWJyZXNvdXJjZUxvYWRlciogbG9h
ZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzKQog
eworICAgIGlmICghbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+Y2hlY2tNaXhlZENvbnRlbnQobV9y
ZXNvdXJjZS0+dHlwZSgpLCByZXEudXJsKCkpKSB7CisgICAgICAgIGxvYWRlci0+Y2FuY2VsKCk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CiAgICAgbV9yZXNvdXJjZS0+c2V0UmVxdWVzdGVkRnJv
bU5ldHdvcmtpbmdMYXllcigpOwogfQogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1pZnJh
bWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0LWluLWlmcmFt
ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDg5MDU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3JpcHQtaW4t
aWZyYW1lLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDkgQEAKIGZyYW1l
ICI8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPiIgLSBkaWRTdGFydFByb3Zpc2lvbmFs
TG9hZEZvckZyYW1lCiBtYWluIGZyYW1lIC0gZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWUK
IGZyYW1lICI8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPiIgLSBkaWRDb21taXRMb2Fk
Rm9yRnJhbWUKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBUaGUgcGFnZSBhdCBodHRwczovLzEy
Ny4wLjAuMTo4NDQzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZXNvdXJjZXMvZnJhbWUtd2l0aC1y
ZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC5odG1sIHJhbiBpbnNlY3VyZSBjb250ZW50IGZy
b20gaHR0cDovLzEyNy4wLjAuMTo4MDgwL3NlY3VyaXR5L21peGVkQ29udGVudC9yZXNvdXJjZXMv
c2NyaXB0LmpzLgorCitkaWRSdW5JbnNlY3VyZUNvbnRlbnQKIGZyYW1lICI8IS0tZnJhbWVQYXRo
IC8vPCEtLWZyYW1lMC0tPi0tPiIgLSBkaWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZQogZnJh
bWUgIjwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+IiAtIGRpZEhhbmRsZU9ubG9hZEV2
ZW50c0ZvckZyYW1lCiBtYWluIGZyYW1lIC0gZGlkSGFuZGxlT25sb2FkRXZlbnRzRm9yRnJhbWUK
QEAgLTgsNiArMTEsNCBAQAogbWFpbiBmcmFtZSAtIGRpZEZpbmlzaExvYWRGb3JGcmFtZQogVGhp
cyB0ZXN0IGxvYWRzIGEgc2VjdXJlIGlmcmFtZSB0aGF0IGxvYWRzIGFuIGluc2VjdXJlIHNjcmlw
dCAoYnV0IHdpdGggYSB0cmlja3kgcmVkaXJlY3QpLiBXZSBzaG91bGQgdHJpZ2dlciBhIG1peGVk
IGNvbnRlbnQgY2FsbGJhY2sgYmVjYXVzZSBhbiBhY3RpdmUgbmV0d29yayBhdHRhY2tlciBjYW4g
ZW5kIHVwIGNvbnRyb2xpbmcgdGhlIHNjcmlwdC4KIAotRklYTUU6IFRoaXMgdGVzdCBjdXJyZW50
IGRvZXMgbm90IHRyaWdnZXIgYSBtaXhlZCBjb250ZW50IGNhbGxiYWNrIQogCi0KSW5kZXg6IExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBz
LXRvLWh0dHAtc2NyaXB0LWluLWlmcmFtZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAt
c2NyaXB0LWluLWlmcmFtZS5odG1sCShyZXZpc2lvbiA4OTA1NSkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2Ny
aXB0LWluLWlmcmFtZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC05LDggKzksNiBAQAogPHA+VGhp
cyB0ZXN0IGxvYWRzIGEgc2VjdXJlIGlmcmFtZSB0aGF0IGxvYWRzIGFuIGluc2VjdXJlIHNjcmlw
dCAoYnV0IHdpdGggYQogdHJpY2t5IHJlZGlyZWN0KS4gIFdlIHNob3VsZCB0cmlnZ2VyIGEgbWl4
ZWQgY29udGVudCBjYWxsYmFjayBiZWNhdXNlIGFuIGFjdGl2ZQogbmV0d29yayBhdHRhY2tlciBj
YW4gZW5kIHVwIGNvbnRyb2xpbmcgdGhlIHNjcmlwdC48L3A+Ci0KLTxwPkZJWE1FOiBUaGlzIHRl
c3QgY3VycmVudCBkb2VzIG5vdCB0cmlnZ2VyIGEgbWl4ZWQgY29udGVudCBjYWxsYmFjayE8L3A+
CiA8aWZyYW1lIHNyYz0iaHR0cHM6Ly8xMjcuMC4wLjE6ODQ0My9zZWN1cml0eS9taXhlZENvbnRl
bnQvcmVzb3VyY2VzL2ZyYW1lLXdpdGgtcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3JpcHQuaHRt
bCI7CiA+PC9pZnJhbWU+CiA8L2JvZHk+CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA4OTEyMikKKysrIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDEx
LTA2LTE3ICBDaHJpcyBFdmFucyAgPGNldmFuc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGV0ZWN0IG1peGVkLXNjcmlwdGlu
ZyBpbnZvbHZpbmcgaHR0cHMgLT4gaHR0cCByZWRpcmVjdHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYyODQ2CisKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1p
ZnJhbWUtZXhwZWN0ZWQudHh0OiBVcGRhdGUgZXhwZWN0YXRpb24uCisgICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3JpcHQt
aW4taWZyYW1lLmh0bWw6IFJlbW92ZSBGSVhNRSBhcyB0aGUgdGVzdCBpcyBub3cgd29ya2luZyBh
cyBleHBlY3RlZC4KKwogMjAxMS0wNi0xNiAgTU9SSVRBIEhhamltZSA8bW9ycml0YUBnb29nbGUu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgZXhwZWN0YXRpb25zIHVwZGF0ZSBmb3I6Cg==
</data>
<flag name="commit-queue"
          id="91535"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97607</attachid>
            <date>2011-06-17 09:27:38 -0700</date>
            <delta_ts>2011-06-17 11:45:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>62846_3.diff</filename>
            <type>text/plain</type>
            <size>8940</size>
            <attacher name="Chris Evans">cevans</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg5MTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDYtMTYgIENocmlzIEV2
YW5zICA8Y2V2YW5zQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBEZXRlY3QgbWl4ZWQtc2NyaXB0aW5nIGludm9sdmluZyBodHRw
cyAtPiBodHRwIHJlZGlyZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NjI4NDYKKworICAgICAgICBUZXN0OiBodHRwL3Rlc3RzL3NlY3VyaXR5L21p
eGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1pZnJhbWUuaHRtbAor
CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpjaGVja01peGVkQ29udGVudCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdCk6IGJyZWFr
IG91dCBtaXhlZCBjb250ZW50IGxvZ2ljLgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRS
ZXNvdXJjZUxvYWRlci5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJl
cXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0Ojp3aWxs
U2VuZFJlcXVlc3QpOiBjaGVjayB0aGUgcmVkaXJlY3QgdGFyZ2V0IGZvciBwb3NzaWJsZSBtaXhl
ZCBjb250ZW50IGlzc3Vlcy4KKwogMjAxMS0wNi0xNiAgWXV0YSBLaXRhbXVyYSAgPHl1dGFrQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByODkwNzMuCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZUxvYWRlci5jcHAJKHJldmlzaW9uIDg5MDU1KQorKysgU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTk5LDYgKzE5
OSw0MSBAQAogfQogI2VuZGlmCiAKK2Jvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNoZWNrTWl4
ZWRDb250ZW50KENhY2hlZFJlc291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IEtVUkwmIHVybCkgY29u
c3QKK3sKKyAgICBzd2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpTY3Jp
cHQ6CisjaWYgRU5BQkxFKFhTTFQpCisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6WFNMU3R5bGVT
aGVldDoKKyNlbmRpZgorICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQ6Cisg
ICAgICAgIC8vIFRoZXNlIHJlc291cmNlIGNhbiBpbmplY3Qgc2NyaXB0IGludG8gdGhlIGN1cnJl
bnQgZG9jdW1lbnQgKFNjcmlwdCwKKyAgICAgICAgLy8gWFNMKSBvciBleGZpbHRyYXRlIHRoZSBj
b250ZW50IG9mIHRoZSBjdXJyZW50IGRvY3VtZW50IChDU1MpLgorICAgICAgICBpZiAoRnJhbWUq
IGYgPSBmcmFtZSgpKQorICAgICAgICAgICAgaWYgKCFmLT5sb2FkZXIoKS0+Y2hlY2tJZlJ1bklu
c2VjdXJlQ29udGVudChtX2RvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQorICAgICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBDYWNoZWRS
ZXNvdXJjZTo6SW1hZ2VSZXNvdXJjZToKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpGb250UmVz
b3VyY2U6IHsKKyAgICAgICAgLy8gVGhlc2UgcmVzb3VyY2VzIGNhbiBjb3JydXB0IG9ubHkgdGhl
IGZyYW1lJ3MgcGl4ZWxzLgorICAgICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgpKSB7CisgICAg
ICAgICAgICBGcmFtZSogdG9wID0gZi0+dHJlZSgpLT50b3AoKTsKKyAgICAgICAgICAgIGlmICgh
dG9wLT5sb2FkZXIoKS0+Y2hlY2tJZkRpc3BsYXlJbnNlY3VyZUNvbnRlbnQodG9wLT5kb2N1bWVu
dCgpLT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQorICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICB9CisjaWYgRU5BQkxFKExJTktfUFJF
RkVUQ0gpCisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6TGlua1ByZWZldGNoOgorICAgIGNhc2Ug
Q2FjaGVkUmVzb3VyY2U6OkxpbmtQcmVyZW5kZXI6CisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6
TGlua1N1YnJlc291cmNlOgorICAgICAgICAvLyBQcmVmZXRjaCBjYW5ub3QgYWZmZWN0IHRoZSBj
dXJyZW50IGRvY3VtZW50LgorICAgICAgICBicmVhazsKKyNlbmRpZgorICAgIH0KKyAgICByZXR1
cm4gdHJ1ZTsKK30KKwogYm9vbCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNo
ZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBjb25zdCBLVVJMJiB1cmwsIGJvb2wgZm9yUHJlbG9hZCkK
IHsKICAgICBpZiAoIWRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkRpc3BsYXkodXJs
KSkgewpAQCAtMjM3LDQyICsyNzIsMTAgQEAKICAgICAvLyBHaXZlbiB0aGF0IHRoZSBsb2FkIGlz
IGFsbG93ZWQgYnkgdGhlIHNhbWUtb3JpZ2luIHBvbGljeSwgd2Ugc2hvdWxkCiAgICAgLy8gY2hl
Y2sgd2hldGhlciB0aGUgbG9hZCBwYXNzZXMgdGhlIG1peGVkLWNvbnRlbnQgcG9saWN5LgogICAg
IC8vCi0gICAgLy8gTm90ZTogQ3VycmVudGx5LCB3ZSBhbHdheXMgYWxsb3cgbWl4ZWQgY29udGVu
dCwgYnV0IHdlIGdlbmVyYXRlIGEKLSAgICAvLyAgICAgICBjYWxsYmFjayB0byB0aGUgRnJhbWVM
b2FkZXJDbGllbnQgaW4gY2FzZSB0aGUgZW1iZWRkZXIgd2FudHMgdG8KLSAgICAvLyAgICAgICB1
cGRhdGUgYW55IHNlY3VyaXR5IGluZGljYXRvcnMuCi0gICAgLy8gCiAgICAgLy8gRklYTUU6IFNo
b3VsZCB3ZSBjb25zaWRlciBmb3JQcmVsb2FkIGhlcmU/Ci0gICAgLy8KLSAgICBzd2l0Y2ggKHR5
cGUpIHsKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpTY3JpcHQ6Ci0jaWYgRU5BQkxFKFhTTFQp
Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6WFNMU3R5bGVTaGVldDoKLSNlbmRpZgotICAgIGNh
c2UgQ2FjaGVkUmVzb3VyY2U6OkNTU1N0eWxlU2hlZXQ6Ci0gICAgICAgIC8vIFRoZXNlIHJlc291
cmNlIGNhbiBpbmplY3Qgc2NyaXB0IGludG8gdGhlIGN1cnJlbnQgZG9jdW1lbnQgKFNjcmlwdCwK
LSAgICAgICAgLy8gWFNMKSBvciBleGZpbHRyYXRlIHRoZSBjb250ZW50IG9mIHRoZSBjdXJyZW50
IGRvY3VtZW50IChDU1MpLgotICAgICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgpKQotICAgICAg
ICAgICAgaWYgKCFmLT5sb2FkZXIoKS0+Y2hlY2tJZlJ1bkluc2VjdXJlQ29udGVudChtX2RvY3Vt
ZW50LT5zZWN1cml0eU9yaWdpbigpLCB1cmwpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6SW1hZ2VSZXNvdXJj
ZToKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpGb250UmVzb3VyY2U6IHsKLSAgICAgICAgLy8g
VGhlc2UgcmVzb3VyY2VzIGNhbiBjb3JydXB0IG9ubHkgdGhlIGZyYW1lJ3MgcGl4ZWxzLgotICAg
ICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgpKSB7Ci0gICAgICAgICAgICBGcmFtZSogdG9wID0g
Zi0+dHJlZSgpLT50b3AoKTsKLSAgICAgICAgICAgIGlmICghdG9wLT5sb2FkZXIoKS0+Y2hlY2tJ
ZkRpc3BsYXlJbnNlY3VyZUNvbnRlbnQodG9wLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigp
LCB1cmwpKQotICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgfQotICAgICAg
ICBicmVhazsKLSAgICB9Ci0jaWYgRU5BQkxFKExJTktfUFJFRkVUQ0gpCi0gICAgY2FzZSBDYWNo
ZWRSZXNvdXJjZTo6TGlua1ByZWZldGNoOgotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkxpbmtQ
cmVyZW5kZXI6Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6TGlua1N1YnJlc291cmNlOgotICAg
ICAgICAvLyBQcmVmZXRjaCBjYW5ub3QgYWZmZWN0IHRoZSBjdXJyZW50IGRvY3VtZW50LgotICAg
ICAgICBicmVhazsKLSNlbmRpZgotICAgIH0KKyAgICBpZiAoIWNoZWNrTWl4ZWRDb250ZW50KHR5
cGUsIHVybCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIC8vIEZJWE1FOiBDb25zaWRl
ciBsZXR0aW5nIHRoZSBlbWJlZGRlciBibG9jayBtaXhlZCBjb250ZW50IGxvYWRzLgogCiAgICAg
c3dpdGNoICh0eXBlKSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAkocmV2aXNpb24gODkwNTUpCisrKyBTb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAkod29ya2luZyBjb3B5KQpA
QCAtMTAyLDYgKzEwMiw3IEBACiAgICAgdm9pZCBwcmVsb2FkKENhY2hlZFJlc291cmNlOjpUeXBl
LCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQsIGJvb2wgcmVmZXJlbmNl
ZEZyb21Cb2R5KTsKICAgICB2b2lkIGNoZWNrRm9yUGVuZGluZ1ByZWxvYWRzKCk7CiAgICAgdm9p
ZCBwcmludFByZWxvYWRTdGF0cygpOworICAgIGJvb2wgY2hlY2tNaXhlZENvbnRlbnQoQ2FjaGVk
UmVzb3VyY2U6OlR5cGUsIGNvbnN0IEtVUkwmKSBjb25zdDsKICAgICAKIHByaXZhdGU6CiAgICAg
Q2FjaGVkUmVzb3VyY2UqIHJlcXVlc3RSZXNvdXJjZShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgU3RyaW5nJiBjaGFyc2V0LCBSZXNvdXJjZUxvYWRQcmlvcml0
eSA9IFJlc291cmNlTG9hZFByaW9yaXR5VW5yZXNvbHZlZCwgYm9vbCBpc1ByZWxvYWQgPSBmYWxz
ZSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VSZXF1ZXN0LmNwcAkocmV2aXNpb24gODkwNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTM0LDggKzEzNCwxMiBAQAogICAgIHJldHVybiByZXF1ZXN0LnJlbGVhc2UoKTsKIH0KIAotdm9p
ZCBDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6OndpbGxTZW5kUmVxdWVzdChTdWJyZXNvdXJjZUxvYWRl
ciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKQordm9pZCBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3Q6OndpbGxTZW5kUmVxdWVzdChTdWJyZXNvdXJjZUxvYWRlciogbG9h
ZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpCiB7Cisg
ICAgaWYgKCFtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5jaGVja01peGVkQ29udGVudChtX3Jlc291
cmNlLT50eXBlKCksIHJlcS51cmwoKSkpIHsKKyAgICAgICAgbG9hZGVyLT5jYW5jZWwoKTsKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KICAgICBtX3Jlc291cmNlLT5zZXRSZXF1ZXN0ZWRGcm9tTmV0
d29ya2luZ0xheWVyKCk7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0LWluLWlmcmFtZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3JpcHQtaW4taWZyYW1lLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gODkwNTUpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1pZnJh
bWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEsOSBAQAogZnJhbWUgIjwh
LS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+IiAtIGRpZFN0YXJ0UHJvdmlzaW9uYWxMb2Fk
Rm9yRnJhbWUKIG1haW4gZnJhbWUgLSBkaWRGaW5pc2hEb2N1bWVudExvYWRGb3JGcmFtZQogZnJh
bWUgIjwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+IiAtIGRpZENvbW1pdExvYWRGb3JG
cmFtZQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFRoZSBwYWdlIGF0IGh0dHBzOi8vMTI3LjAu
MC4xOjg0NDMvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3Jlc291cmNlcy9mcmFtZS13aXRoLXJlZGly
ZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0Lmh0bWwgcmFuIGluc2VjdXJlIGNvbnRlbnQgZnJvbSBo
dHRwOi8vMTI3LjAuMC4xOjgwODAvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3Jlc291cmNlcy9zY3Jp
cHQuanMuCisKK2RpZFJ1bkluc2VjdXJlQ29udGVudAogZnJhbWUgIjwhLS1mcmFtZVBhdGggLy88
IS0tZnJhbWUwLS0+LS0+IiAtIGRpZEZpbmlzaERvY3VtZW50TG9hZEZvckZyYW1lCiBmcmFtZSAi
PCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4iIC0gZGlkSGFuZGxlT25sb2FkRXZlbnRz
Rm9yRnJhbWUKIG1haW4gZnJhbWUgLSBkaWRIYW5kbGVPbmxvYWRFdmVudHNGb3JGcmFtZQpAQCAt
OCw2ICsxMSw0IEBACiBtYWluIGZyYW1lIC0gZGlkRmluaXNoTG9hZEZvckZyYW1lCiBUaGlzIHRl
c3QgbG9hZHMgYSBzZWN1cmUgaWZyYW1lIHRoYXQgbG9hZHMgYW4gaW5zZWN1cmUgc2NyaXB0IChi
dXQgd2l0aCBhIHRyaWNreSByZWRpcmVjdCkuIFdlIHNob3VsZCB0cmlnZ2VyIGEgbWl4ZWQgY29u
dGVudCBjYWxsYmFjayBiZWNhdXNlIGFuIGFjdGl2ZSBuZXR3b3JrIGF0dGFja2VyIGNhbiBlbmQg
dXAgY29udHJvbGluZyB0aGUgc2NyaXB0LgogCi1GSVhNRTogVGhpcyB0ZXN0IGN1cnJlbnQgZG9l
cyBub3QgdHJpZ2dlciBhIG1peGVkIGNvbnRlbnQgY2FsbGJhY2shCiAKLQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8t
aHR0cC1zY3JpcHQtaW4taWZyYW1lLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3Jp
cHQtaW4taWZyYW1lLmh0bWwJKHJldmlzaW9uIDg5MDU1KQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3JpcHQt
aW4taWZyYW1lLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTksOCArOSw2IEBACiA8cD5UaGlzIHRl
c3QgbG9hZHMgYSBzZWN1cmUgaWZyYW1lIHRoYXQgbG9hZHMgYW4gaW5zZWN1cmUgc2NyaXB0IChi
dXQgd2l0aCBhCiB0cmlja3kgcmVkaXJlY3QpLiAgV2Ugc2hvdWxkIHRyaWdnZXIgYSBtaXhlZCBj
b250ZW50IGNhbGxiYWNrIGJlY2F1c2UgYW4gYWN0aXZlCiBuZXR3b3JrIGF0dGFja2VyIGNhbiBl
bmQgdXAgY29udHJvbGluZyB0aGUgc2NyaXB0LjwvcD4KLQotPHA+RklYTUU6IFRoaXMgdGVzdCBj
dXJyZW50IGRvZXMgbm90IHRyaWdnZXIgYSBtaXhlZCBjb250ZW50IGNhbGxiYWNrITwvcD4KIDxp
ZnJhbWUgc3JjPSJodHRwczovLzEyNy4wLjAuMTo4NDQzL3NlY3VyaXR5L21peGVkQ29udGVudC9y
ZXNvdXJjZXMvZnJhbWUtd2l0aC1yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC5odG1sIjsK
ID48L2lmcmFtZT4KIDwvYm9keT4KSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDg5MTIyKQorKysgTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDYt
MTcgIENocmlzIEV2YW5zICA8Y2V2YW5zQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEZXRlY3QgbWl4ZWQtc2NyaXB0aW5nIGlu
dm9sdmluZyBodHRwcyAtPiBodHRwIHJlZGlyZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjI4NDYKKworICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0LWluLWlmcmFt
ZS1leHBlY3RlZC50eHQ6IFVwZGF0ZSBleHBlY3RhdGlvbi4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1p
ZnJhbWUuaHRtbDogUmVtb3ZlIEZJWE1FIGFzIHRoZSB0ZXN0IGlzIG5vdyB3b3JraW5nIGFzIGV4
cGVjdGVkLgorCiAyMDExLTA2LTE2ICBNT1JJVEEgSGFqaW1lIDxtb3JyaXRhQGdvb2dsZS5jb20+
CiAKICAgICAgICAgVW5yZXZpZXdlZCBleHBlY3RhdGlvbnMgdXBkYXRlIGZvcjoK
</data>
<flag name="review"
          id="91606"
          type_id="1"
          status="+"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="91607"
          type_id="3"
          status="-"
          setter="abarth"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97629</attachid>
            <date>2011-06-17 11:45:35 -0700</date>
            <delta_ts>2011-06-17 12:11:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>62846_4.diff</filename>
            <type>text/plain</type>
            <size>8953</size>
            <attacher name="Chris Evans">cevans</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg5MTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDYtMTYgIENocmlzIEV2
YW5zICA8Y2V2YW5zQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJh
cnRoLgorCisgICAgICAgIERldGVjdCBtaXhlZC1zY3JpcHRpbmcgaW52b2x2aW5nIGh0dHBzIC0+
IGh0dHAgcmVkaXJlY3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD02Mjg0NgorCisgICAgICAgIFRlc3Q6IGh0dHAvdGVzdHMvc2VjdXJpdHkvbWl4ZWRD
b250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0dHAtc2NyaXB0LWluLWlmcmFtZS5odG1sCisKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNoZWNrSW5zZWN1cmVDb250ZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVyOjpjYW5SZXF1ZXN0KTogYnJlYWsg
b3V0IGluc2VjdXJlIGNvbnRlbnQgbG9naWMuCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
UmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZVJlcXVlc3Q6Ondp
bGxTZW5kUmVxdWVzdCk6IGNoZWNrIHRoZSByZWRpcmVjdCB0YXJnZXQgZm9yIHBvc3NpYmxlIGlu
c2VjdXJlIGNvbnRlbnQgaXNzdWVzLgorCiAyMDExLTA2LTE2ICBZdXRhIEtpdGFtdXJhICA8eXV0
YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI4OTA3
My4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRl
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlTG9hZGVyLmNwcAkocmV2aXNpb24gODkwNTUpCisrKyBTb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOTks
NiArMTk5LDQxIEBACiB9CiAjZW5kaWYKIAorYm9vbCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2hl
Y2tJbnNlY3VyZUNvbnRlbnQoQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgY29uc3QgS1VSTCYg
dXJsKSBjb25zdAoreworICAgIHN3aXRjaCAodHlwZSkgeworICAgIGNhc2UgQ2FjaGVkUmVzb3Vy
Y2U6OlNjcmlwdDoKKyNpZiBFTkFCTEUoWFNMVCkKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpY
U0xTdHlsZVNoZWV0OgorI2VuZGlmCisgICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6Q1NTU3R5bGVT
aGVldDoKKyAgICAgICAgLy8gVGhlc2UgcmVzb3VyY2UgY2FuIGluamVjdCBzY3JpcHQgaW50byB0
aGUgY3VycmVudCBkb2N1bWVudCAoU2NyaXB0LAorICAgICAgICAvLyBYU0wpIG9yIGV4ZmlsdHJh
dGUgdGhlIGNvbnRlbnQgb2YgdGhlIGN1cnJlbnQgZG9jdW1lbnQgKENTUykuCisgICAgICAgIGlm
IChGcmFtZSogZiA9IGZyYW1lKCkpCisgICAgICAgICAgICBpZiAoIWYtPmxvYWRlcigpLT5jaGVj
a0lmUnVuSW5zZWN1cmVDb250ZW50KG1fZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkp
CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBicmVhazsKKyAgICBjYXNl
IENhY2hlZFJlc291cmNlOjpJbWFnZVJlc291cmNlOgorICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6
OkZvbnRSZXNvdXJjZTogeworICAgICAgICAvLyBUaGVzZSByZXNvdXJjZXMgY2FuIGNvcnJ1cHQg
b25seSB0aGUgZnJhbWUncyBwaXhlbHMuCisgICAgICAgIGlmIChGcmFtZSogZiA9IGZyYW1lKCkp
IHsKKyAgICAgICAgICAgIEZyYW1lKiB0b3AgPSBmLT50cmVlKCktPnRvcCgpOworICAgICAgICAg
ICAgaWYgKCF0b3AtPmxvYWRlcigpLT5jaGVja0lmRGlzcGxheUluc2VjdXJlQ29udGVudCh0b3At
PmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCisgICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgICAgICB9CisgICAgICAgIGJyZWFrOworICAgIH0KKyNpZiBFTkFCTEUo
TElOS19QUkVGRVRDSCkKKyAgICBjYXNlIENhY2hlZFJlc291cmNlOjpMaW5rUHJlZmV0Y2g6Cisg
ICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6TGlua1ByZXJlbmRlcjoKKyAgICBjYXNlIENhY2hlZFJl
c291cmNlOjpMaW5rU3VicmVzb3VyY2U6CisgICAgICAgIC8vIFByZWZldGNoIGNhbm5vdCBhZmZl
Y3QgdGhlIGN1cnJlbnQgZG9jdW1lbnQuCisgICAgICAgIGJyZWFrOworI2VuZGlmCisgICAgfQor
ICAgIHJldHVybiB0cnVlOworfQorCiBib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjYW5SZXF1
ZXN0KENhY2hlZFJlc291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IEtVUkwmIHVybCwgYm9vbCBmb3JQ
cmVsb2FkKQogewogICAgIGlmICghZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuRGlz
cGxheSh1cmwpKSB7CkBAIC0yMzcsNDIgKzI3MiwxMCBAQAogICAgIC8vIEdpdmVuIHRoYXQgdGhl
IGxvYWQgaXMgYWxsb3dlZCBieSB0aGUgc2FtZS1vcmlnaW4gcG9saWN5LCB3ZSBzaG91bGQKICAg
ICAvLyBjaGVjayB3aGV0aGVyIHRoZSBsb2FkIHBhc3NlcyB0aGUgbWl4ZWQtY29udGVudCBwb2xp
Y3kuCiAgICAgLy8KLSAgICAvLyBOb3RlOiBDdXJyZW50bHksIHdlIGFsd2F5cyBhbGxvdyBtaXhl
ZCBjb250ZW50LCBidXQgd2UgZ2VuZXJhdGUgYQotICAgIC8vICAgICAgIGNhbGxiYWNrIHRvIHRo
ZSBGcmFtZUxvYWRlckNsaWVudCBpbiBjYXNlIHRoZSBlbWJlZGRlciB3YW50cyB0bwotICAgIC8v
ICAgICAgIHVwZGF0ZSBhbnkgc2VjdXJpdHkgaW5kaWNhdG9ycy4KLSAgICAvLyAKICAgICAvLyBG
SVhNRTogU2hvdWxkIHdlIGNvbnNpZGVyIGZvclByZWxvYWQgaGVyZT8KLSAgICAvLwotICAgIHN3
aXRjaCAodHlwZSkgewotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OlNjcmlwdDoKLSNpZiBFTkFC
TEUoWFNMVCkKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpYU0xTdHlsZVNoZWV0OgotI2VuZGlm
Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJjZTo6Q1NTU3R5bGVTaGVldDoKLSAgICAgICAgLy8gVGhl
c2UgcmVzb3VyY2UgY2FuIGluamVjdCBzY3JpcHQgaW50byB0aGUgY3VycmVudCBkb2N1bWVudCAo
U2NyaXB0LAotICAgICAgICAvLyBYU0wpIG9yIGV4ZmlsdHJhdGUgdGhlIGNvbnRlbnQgb2YgdGhl
IGN1cnJlbnQgZG9jdW1lbnQgKENTUykuCi0gICAgICAgIGlmIChGcmFtZSogZiA9IGZyYW1lKCkp
Ci0gICAgICAgICAgICBpZiAoIWYtPmxvYWRlcigpLT5jaGVja0lmUnVuSW5zZWN1cmVDb250ZW50
KG1fZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIHVybCkpCi0gICAgICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpJbWFn
ZVJlc291cmNlOgotICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkZvbnRSZXNvdXJjZTogewotICAg
ICAgICAvLyBUaGVzZSByZXNvdXJjZXMgY2FuIGNvcnJ1cHQgb25seSB0aGUgZnJhbWUncyBwaXhl
bHMuCi0gICAgICAgIGlmIChGcmFtZSogZiA9IGZyYW1lKCkpIHsKLSAgICAgICAgICAgIEZyYW1l
KiB0b3AgPSBmLT50cmVlKCktPnRvcCgpOwotICAgICAgICAgICAgaWYgKCF0b3AtPmxvYWRlcigp
LT5jaGVja0lmRGlzcGxheUluc2VjdXJlQ29udGVudCh0b3AtPmRvY3VtZW50KCktPnNlY3VyaXR5
T3JpZ2luKCksIHVybCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9
Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLSNpZiBFTkFCTEUoTElOS19QUkVGRVRDSCkKLSAgICBj
YXNlIENhY2hlZFJlc291cmNlOjpMaW5rUHJlZmV0Y2g6Ci0gICAgY2FzZSBDYWNoZWRSZXNvdXJj
ZTo6TGlua1ByZXJlbmRlcjoKLSAgICBjYXNlIENhY2hlZFJlc291cmNlOjpMaW5rU3VicmVzb3Vy
Y2U6Ci0gICAgICAgIC8vIFByZWZldGNoIGNhbm5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgZG9jdW1l
bnQuCi0gICAgICAgIGJyZWFrOwotI2VuZGlmCi0gICAgfQorICAgIGlmICghY2hlY2tJbnNlY3Vy
ZUNvbnRlbnQodHlwZSwgdXJsKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgLy8gRklY
TUU6IENvbnNpZGVyIGxldHRpbmcgdGhlIGVtYmVkZGVyIGJsb2NrIG1peGVkIGNvbnRlbnQgbG9h
ZHMuCiAKICAgICBzd2l0Y2ggKHR5cGUpIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCShyZXZpc2lvbiA4OTA1NSkKKysr
IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMDIsNiArMTAyLDcgQEAKICAgICB2b2lkIHByZWxvYWQoQ2FjaGVkUmVz
b3VyY2U6OlR5cGUsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgY2hhcnNldCwgYm9v
bCByZWZlcmVuY2VkRnJvbUJvZHkpOwogICAgIHZvaWQgY2hlY2tGb3JQZW5kaW5nUHJlbG9hZHMo
KTsKICAgICB2b2lkIHByaW50UHJlbG9hZFN0YXRzKCk7CisgICAgYm9vbCBjaGVja0luc2VjdXJl
Q29udGVudChDYWNoZWRSZXNvdXJjZTo6VHlwZSwgY29uc3QgS1VSTCYpIGNvbnN0OwogICAgIAog
cHJpdmF0ZToKICAgICBDYWNoZWRSZXNvdXJjZSogcmVxdWVzdFJlc291cmNlKENhY2hlZFJlc291
cmNlOjpUeXBlLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIGNoYXJzZXQsIFJlc291
cmNlTG9hZFByaW9yaXR5ID0gUmVzb3VyY2VMb2FkUHJpb3JpdHlVbnJlc29sdmVkLCBib29sIGlz
UHJlbG9hZCA9IGZhbHNlKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSZXNvdXJjZVJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCShyZXZpc2lvbiA4OTA1NSkKKysrIFNv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3QuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMzQsOCArMTM0LDEyIEBACiAgICAgcmV0dXJuIHJlcXVlc3QucmVsZWFz
ZSgpOwogfQogCi12b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6d2lsbFNlbmRSZXF1ZXN0KFN1
YnJlc291cmNlTG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpCit2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6d2lsbFNlbmRSZXF1ZXN0KFN1YnJlc291
cmNlTG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJikKIHsKKyAgICBpZiAoIW1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPmNoZWNrSW5zZWN1
cmVDb250ZW50KG1fcmVzb3VyY2UtPnR5cGUoKSwgcmVxLnVybCgpKSkgeworICAgICAgICBsb2Fk
ZXItPmNhbmNlbCgpOworICAgICAgICByZXR1cm47CisgICAgfQogICAgIG1fcmVzb3VyY2UtPnNl
dFJlcXVlc3RlZEZyb21OZXR3b3JraW5nTGF5ZXIoKTsKIH0KIApJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1z
Y3JpcHQtaW4taWZyYW1lLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNj
cmlwdC1pbi1pZnJhbWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA4OTA1NSkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvbWl4ZWRDb250ZW50L3JlZGlyZWN0LWh0dHBzLXRvLWh0
dHAtc2NyaXB0LWluLWlmcmFtZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEsNiAr
MSw5IEBACiBmcmFtZSAiPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4iIC0gZGlkU3Rh
cnRQcm92aXNpb25hbExvYWRGb3JGcmFtZQogbWFpbiBmcmFtZSAtIGRpZEZpbmlzaERvY3VtZW50
TG9hZEZvckZyYW1lCiBmcmFtZSAiPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4iIC0g
ZGlkQ29tbWl0TG9hZEZvckZyYW1lCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTogVGhlIHBhZ2Ug
YXQgaHR0cHM6Ly8xMjcuMC4wLjE6ODQ0My9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVzb3VyY2Vz
L2ZyYW1lLXdpdGgtcmVkaXJlY3QtaHR0cHMtdG8taHR0cC1zY3JpcHQuaHRtbCByYW4gaW5zZWN1
cmUgY29udGVudCBmcm9tIGh0dHA6Ly8xMjcuMC4wLjE6ODA4MC9zZWN1cml0eS9taXhlZENvbnRl
bnQvcmVzb3VyY2VzL3NjcmlwdC5qcy4KKworZGlkUnVuSW5zZWN1cmVDb250ZW50CiBmcmFtZSAi
PCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4iIC0gZGlkRmluaXNoRG9jdW1lbnRMb2Fk
Rm9yRnJhbWUKIGZyYW1lICI8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPiIgLSBkaWRI
YW5kbGVPbmxvYWRFdmVudHNGb3JGcmFtZQogbWFpbiBmcmFtZSAtIGRpZEhhbmRsZU9ubG9hZEV2
ZW50c0ZvckZyYW1lCkBAIC04LDYgKzExLDQgQEAKIG1haW4gZnJhbWUgLSBkaWRGaW5pc2hMb2Fk
Rm9yRnJhbWUKIFRoaXMgdGVzdCBsb2FkcyBhIHNlY3VyZSBpZnJhbWUgdGhhdCBsb2FkcyBhbiBp
bnNlY3VyZSBzY3JpcHQgKGJ1dCB3aXRoIGEgdHJpY2t5IHJlZGlyZWN0KS4gV2Ugc2hvdWxkIHRy
aWdnZXIgYSBtaXhlZCBjb250ZW50IGNhbGxiYWNrIGJlY2F1c2UgYW4gYWN0aXZlIG5ldHdvcmsg
YXR0YWNrZXIgY2FuIGVuZCB1cCBjb250cm9saW5nIHRoZSBzY3JpcHQuCiAKLUZJWE1FOiBUaGlz
IHRlc3QgY3VycmVudCBkb2VzIG5vdCB0cmlnZ2VyIGEgbWl4ZWQgY29udGVudCBjYWxsYmFjayEK
IAotCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9y
ZWRpcmVjdC1odHRwcy10by1odHRwLXNjcmlwdC1pbi1pZnJhbWUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1o
dHRwcy10by1odHRwLXNjcmlwdC1pbi1pZnJhbWUuaHRtbAkocmV2aXNpb24gODkwNTUpCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRw
cy10by1odHRwLXNjcmlwdC1pbi1pZnJhbWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtOSw4ICs5
LDYgQEAKIDxwPlRoaXMgdGVzdCBsb2FkcyBhIHNlY3VyZSBpZnJhbWUgdGhhdCBsb2FkcyBhbiBp
bnNlY3VyZSBzY3JpcHQgKGJ1dCB3aXRoIGEKIHRyaWNreSByZWRpcmVjdCkuICBXZSBzaG91bGQg
dHJpZ2dlciBhIG1peGVkIGNvbnRlbnQgY2FsbGJhY2sgYmVjYXVzZSBhbiBhY3RpdmUKIG5ldHdv
cmsgYXR0YWNrZXIgY2FuIGVuZCB1cCBjb250cm9saW5nIHRoZSBzY3JpcHQuPC9wPgotCi08cD5G
SVhNRTogVGhpcyB0ZXN0IGN1cnJlbnQgZG9lcyBub3QgdHJpZ2dlciBhIG1peGVkIGNvbnRlbnQg
Y2FsbGJhY2shPC9wPgogPGlmcmFtZSBzcmM9Imh0dHBzOi8vMTI3LjAuMC4xOjg0NDMvc2VjdXJp
dHkvbWl4ZWRDb250ZW50L3Jlc291cmNlcy9mcmFtZS13aXRoLXJlZGlyZWN0LWh0dHBzLXRvLWh0
dHAtc2NyaXB0Lmh0bWwiOwogPjwvaWZyYW1lPgogPC9ib2R5PgpJbmRleDogTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24g
ODkxMjIpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyAr
MSwxMyBAQAorMjAxMS0wNi0xNyAgQ2hyaXMgRXZhbnMgIDxjZXZhbnNAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCisKKyAgICAgICAgRGV0ZWN0IG1peGVk
LXNjcmlwdGluZyBpbnZvbHZpbmcgaHR0cHMgLT4gaHR0cCByZWRpcmVjdHMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYyODQ2CisKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9yZWRpcmVjdC1odHRwcy10by1odHRwLXNj
cmlwdC1pbi1pZnJhbWUtZXhwZWN0ZWQudHh0OiBVcGRhdGUgZXhwZWN0YXRpb24uCisgICAgICAg
ICogaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvcmVkaXJlY3QtaHR0cHMtdG8taHR0
cC1zY3JpcHQtaW4taWZyYW1lLmh0bWw6IFJlbW92ZSBGSVhNRSBhcyB0aGUgdGVzdCBpcyBub3cg
d29ya2luZyBhcyBleHBlY3RlZC4KKwogMjAxMS0wNi0xNiAgTU9SSVRBIEhhamltZSA8bW9ycml0
YUBnb29nbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgZXhwZWN0YXRpb25zIHVwZGF0ZSBm
b3I6Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>