<?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>166951</bug_id>
          
          <creation_ts>2017-01-11 16:40:30 -0800</creation_ts>
          <short_desc>Add IconLoadingDelegate functionality to WKView</short_desc>
          <delta_ts>2017-01-22 17:12:23 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</component>
          <version>WebKit 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="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1265958</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-01-11 16:40:30 -0800</bug_when>
    <thetext>Add IconLoadingDelegate functionality to WKView

This is a followup to https://trac.webkit.org/changeset/209640</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265961</commentid>
    <comment_count>1</comment_count>
      <attachid>298630</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-01-11 16:44:43 -0800</bug_when>
    <thetext>Created attachment 298630
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265963</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-11 16:47:40 -0800</bug_when>
    <thetext>Attachment 298630 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:872:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:872:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:875:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:875:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 4 in 2 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>1265964</commentid>
    <comment_count>3</comment_count>
      <attachid>298630</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-01-11 16:48:50 -0800</bug_when>
    <thetext>Comment on attachment 298630
Patch

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

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:877
&gt; +                    completionHandler([loadCompletionHandler = Block_copy(loadCompletionHandler)](API::Data* data, WebKit::CallbackBase::Error error) {

Plz to BlockPtr.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265977</commentid>
    <comment_count>4</comment_count>
      <attachid>298636</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-01-11 17:08:46 -0800</bug_when>
    <thetext>Created attachment 298636
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265978</commentid>
    <comment_count>5</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-01-11 17:09:25 -0800</bug_when>
    <thetext>Running EWS before landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1265980</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-11 17:11:11 -0800</bug_when>
    <thetext>Attachment 298636 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:873:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:873:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:876:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:876:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:878:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 5 in 2 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>1266047</commentid>
    <comment_count>7</comment_count>
      <attachid>298654</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-01-11 20:03:47 -0800</bug_when>
    <thetext>Created attachment 298654
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266050</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-11 20:05:41 -0800</bug_when>
    <thetext>Attachment 298654 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:873:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:873:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:876:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:876:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:878:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 5 in 2 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>1266076</commentid>
    <comment_count>9</comment_count>
      <attachid>298659</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-01-11 21:38:41 -0800</bug_when>
    <thetext>Created attachment 298659
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1266078</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-11 21:41:06 -0800</bug_when>
    <thetext>Attachment 298659 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:874:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:874:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:877:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:877:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/API/mac/WKView.mm:879:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 5 in 2 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>1266087</commentid>
    <comment_count>11</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-01-11 22:18:00 -0800</bug_when>
    <thetext>https://trac.webkit.org/changeset/210624</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1268945</commentid>
    <comment_count>12</comment_count>
      <attachid>298659</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-01-22 17:12:23 -0800</bug_when>
    <thetext>Comment on attachment 298659
Patch

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

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:868
&gt; +            return sel_registerName(&quot;_shouldLoadIconWithParameters:completionHandler:&quot;);

Doesn’t seem good to keep calling sel_registerName every time this function is called. On a related note, why not use @selector instead of an explicit call to set_registerName?

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:872
&gt; +        typedef void (^IconLoadCompletionHandler)(NSData*);

In new code, I suggest using instead of typedef. Also, coding style document says we should use a space between NSData and the *.

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:875
&gt; +            RetainPtr&lt;_WKLinkIconParameters&gt; parameters = adoptNS([[_WKLinkIconParameters alloc] _initWithLinkIcon:linkIcon]);

This is an example of a place where auto looks much better to me than writing out RetainPtr&lt;xxx&gt;.

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:877
&gt; +            [m_wkView performSelector:delegateSelector() withObject:parameters.get() withObject:^void (IconLoadCompletionHandler loadCompletionHandler) {

Is the &quot;.get() needed here?

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:890
&gt; +        WKView *m_wkView;

What guarantees this pointer is not used after the WKView has been deallocated?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298630</attachid>
            <date>2017-01-11 16:44:43 -0800</date>
            <delta_ts>2017-01-11 17:08:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166951-20170111164305.patch</filename>
            <type>text/plain</type>
            <size>4409</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTgxY2MxMGE1NzRiZGY0
NGRmNmEyMDVjNjMzNDg2ODg2ZGQxNjJlYy4uMWI3OWJhMTlkNzY3NDFhOTIxOGVhZjRmZDU2NmVm
YWE3YjYzYTAwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE3LTAxLTExICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgSWNvbkxvYWRpbmdE
ZWxlZ2F0ZSBmdW5jdGlvbmFsaXR5IHRvIFdLVmlldy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Njk1MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tOgor
ICAgICAgICAoLVtXS1ZpZXcgZGVhbGxvY10pOgorICAgICAgICAoLVtXS1ZpZXcgbWF5YmVJbnN0
YWxsSWNvbkxvYWRpbmdDbGllbnRdKTogSWYgdGhlIHN1YmNsYXNzIGltcGxlbWVudHMgdGhlIGRl
bGVnYXRlIG1ldGhvZCwgaW5zdGFsbCB0aGUKKyAgICAgICAgICBpY29uIGxvYWRpbmcgY2xpZW50
LiBPdGhlcndpc2UsIG1haW50YWluIHRoZSBub3JtYWwgSWNvbkRhdGFiYXNlIGxvYWRpbmcgYmVo
YXZpb3IuCisgICAgICAgICgtW1dLVmlldyBpbml0V2l0aEZyYW1lOnByb2Nlc3NQb29sOmNvbmZp
Z3VyYXRpb246d2ViVmlldzpdKToKKwogMjAxNy0wMS0wNiAgR3VzdGF2byBOb3JvbmhhIFNpbHZh
ICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4KIAogICAgICAgICBbR1RLXSBTaG91
bGQgc3VwcG9ydCBrZXkgYW5kIGNvZGUgcHJvcGVydGllcyBvbiBrZXlib2FyZCBldmVudHMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbSBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQppbmRleCAyZmVmMWIwYmM1
ZjZkZTVlMTY4NGI3ODdhMTg3ZTlhN2M3OGFjZmM4Li5hMGVkMDc2OWYwY2M1Y2RlODEzYTFiYTUx
M2UxNDFkM2RhMjc1MWY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L21hYy9XS1ZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tW
aWV3Lm1tCkBAIC0yOSw4ICsyOSwxMCBAQAogI2lmIFBMQVRGT1JNKE1BQykKIAogI2ltcG9ydCAi
QVBJSGl0VGVzdFJlc3VsdC5oIgorI2ltcG9ydCAiQVBJSWNvbkxvYWRpbmdDbGllbnQuaCIKICNp
bXBvcnQgIkFQSVBhZ2VDb25maWd1cmF0aW9uLmgiCiAjaW1wb3J0ICJXS0Jyb3dzaW5nQ29udGV4
dEdyb3VwUHJpdmF0ZS5oIgorI2ltcG9ydCAiV0tOU0RhdGEuaCIKICNpbXBvcnQgIldLUHJvY2Vz
c0dyb3VwUHJpdmF0ZS5oIgogI2ltcG9ydCAiV2ViQmFja0ZvcndhcmRMaXN0SXRlbS5oIgogI2lt
cG9ydCAiV2ViS2l0MkluaXRpYWxpemUuaCIKQEAgLTM4LDYgKzQwLDcgQEAKICNpbXBvcnQgIldl
YlByZWZlcmVuY2VzS2V5cy5oIgogI2ltcG9ydCAiV2ViUHJvY2Vzc1Bvb2wuaCIKICNpbXBvcnQg
IldlYlZpZXdJbXBsLmgiCisjaW1wb3J0ICJfV0tMaW5rSWNvblBhcmFtZXRlcnNJbnRlcm5hbC5o
IgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBA
IC03OCw2ICs4MSw3IEBAIC0gKGlkKWluaXRXaXRoRnJhbWU6KE5TUmVjdClmcmFtZSBwcm9jZXNz
R3JvdXA6KFdLUHJvY2Vzc0dyb3VwICopcHJvY2Vzc0dyb3VwIGJyCiAKIC0gKHZvaWQpZGVhbGxv
YwogeworICAgIF9kYXRhLT5faW1wbC0+cGFnZSgpLnNldEljb25Mb2FkaW5nQ2xpZW50KG51bGxw
dHIpOwogICAgIF9kYXRhLT5faW1wbCA9IG51bGxwdHI7CiAKICAgICBbX2RhdGEgcmVsZWFzZV07
CkBAIC04NDgsNiArODUyLDQ2IEBAIC0gKE5TQXJyYXkgKiluYW1lc09mUHJvbWlzZWRGaWxlc0Ry
b3BwZWRBdERlc3RpbmF0aW9uOihOU1VSTCAqKWRyb3BEZXN0aW5hdGlvbgogICAgIHJldHVybiBf
ZGF0YS0+X2ltcGwtPm5hbWVzT2ZQcm9taXNlZEZpbGVzRHJvcHBlZEF0RGVzdGluYXRpb24oZHJv
cERlc3RpbmF0aW9uKTsKIH0KIAorLSAodm9pZCltYXliZUluc3RhbGxJY29uTG9hZGluZ0NsaWVu
dAoreworICAgIGNsYXNzIEljb25Mb2FkaW5nQ2xpZW50IDogcHVibGljIEFQSTo6SWNvbkxvYWRp
bmdDbGllbnQgeworICAgIHB1YmxpYzoKKyAgICAgICAgZXhwbGljaXQgSWNvbkxvYWRpbmdDbGll
bnQoV0tWaWV3ICp3a1ZpZXcpCisgICAgICAgICAgICA6IG1fd2tWaWV3KHdrVmlldykKKyAgICAg
ICAgeworICAgICAgICB9CisKKyAgICAgICAgc3RhdGljIFNFTCBkZWxlZ2F0ZVNlbGVjdG9yKCkK
KyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIHNlbF9yZWdpc3Rlck5hbWUoIl9zaG91bGRM
b2FkSWNvbldpdGhQYXJhbWV0ZXJzOmNvbXBsZXRpb25IYW5kbGVyOiIpOworICAgICAgICB9CisK
KyAgICBwcml2YXRlOgorICAgICAgICB0eXBlZGVmIHZvaWQgKF5JY29uTG9hZENvbXBsZXRpb25I
YW5kbGVyKShOU0RhdGEqKTsKKworICAgICAgICB2b2lkIGdldExvYWREZWNpc2lvbkZvckljb24o
Y29uc3QgV2ViQ29yZTo6TGlua0ljb24mIGxpbmtJY29uLCBGdW5jdGlvbjx2b2lkIChzdGQ6OmZ1
bmN0aW9uPHZvaWQgKEFQSTo6RGF0YSosIFdlYktpdDo6Q2FsbGJhY2tCYXNlOjpFcnJvcik+KT4m
JiBjb21wbGV0aW9uSGFuZGxlcikgb3ZlcnJpZGUgeworICAgICAgICAgICAgUmV0YWluUHRyPF9X
S0xpbmtJY29uUGFyYW1ldGVycz4gcGFyYW1ldGVycyA9IGFkb3B0TlMoW1tfV0tMaW5rSWNvblBh
cmFtZXRlcnMgYWxsb2NdIF9pbml0V2l0aExpbmtJY29uOmxpbmtJY29uXSk7CisKKyAgICAgICAg
ICAgIFttX3drVmlldyBwZXJmb3JtU2VsZWN0b3I6ZGVsZWdhdGVTZWxlY3RvcigpIHdpdGhPYmpl
Y3Q6cGFyYW1ldGVycy5nZXQoKSB3aXRoT2JqZWN0Ol52b2lkIChJY29uTG9hZENvbXBsZXRpb25I
YW5kbGVyIGxvYWRDb21wbGV0aW9uSGFuZGxlcikgeworICAgICAgICAgICAgICAgIGlmIChsb2Fk
Q29tcGxldGlvbkhhbmRsZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoW2xvYWRDb21wbGV0aW9uSGFuZGxlciA9IEJsb2NrX2NvcHkobG9hZENvbXBsZXRpb25IYW5k
bGVyKV0oQVBJOjpEYXRhKiBkYXRhLCBXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3IgZXJyb3Ip
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvciAhPSBDYWxsYmFja0Jhc2U6OkVy
cm9yOjpOb25lIHx8ICFkYXRhKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRDb21w
bGV0aW9uSGFuZGxlcihuaWwpOworICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGxvYWRDb21wbGV0aW9uSGFuZGxlcih3cmFwcGVyKCpkYXRh
KSk7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAg
ICAgICAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihudWxscHRyKTsKKyAgICAgICAgICAg
IH1dOworICAgICAgICB9CisKKyAgICAgICAgV0tWaWV3ICptX3drVmlldzsKKyAgICB9OworCisg
ICAgaWYgKFtzZWxmIHJlc3BvbmRzVG9TZWxlY3RvcjpJY29uTG9hZGluZ0NsaWVudDo6ZGVsZWdh
dGVTZWxlY3RvcigpXSkKKyAgICAgICAgX2RhdGEtPl9pbXBsLT5wYWdlKCkuc2V0SWNvbkxvYWRp
bmdDbGllbnQoc3RkOjptYWtlX3VuaXF1ZTxJY29uTG9hZGluZ0NsaWVudD4oc2VsZikpOworfQor
CiAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhGcmFtZTooTlNSZWN0KWZyYW1lIHByb2Nlc3NQb29s
OihXZWJQcm9jZXNzUG9vbCYpcHJvY2Vzc1Bvb2wgY29uZmlndXJhdGlvbjooUmVmPEFQSTo6UGFn
ZUNvbmZpZ3VyYXRpb24+JiYpY29uZmlndXJhdGlvbiB3ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJW
aWV3CiB7CiAgICAgc2VsZiA9IFtzdXBlciBpbml0V2l0aEZyYW1lOmZyYW1lXTsKQEAgLTg1OSw2
ICs5MDMsOCBAQCAtIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhGcmFtZTooTlNSZWN0KWZyYW1lIHBy
b2Nlc3NQb29sOihXZWJQcm9jZXNzUG9vbCYpcHJvY2VzcwogICAgIF9kYXRhID0gW1tXS1ZpZXdE
YXRhIGFsbG9jXSBpbml0XTsKICAgICBfZGF0YS0+X2ltcGwgPSBzdGQ6Om1ha2VfdW5pcXVlPFdl
YlZpZXdJbXBsPihzZWxmLCB3ZWJWaWV3LCBwcm9jZXNzUG9vbCwgV1RGTW92ZShjb25maWd1cmF0
aW9uKSk7CiAKKyAgICBbc2VsZiBtYXliZUluc3RhbGxJY29uTG9hZGluZ0NsaWVudF07CisKICAg
ICByZXR1cm4gc2VsZjsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298636</attachid>
            <date>2017-01-11 17:08:46 -0800</date>
            <delta_ts>2017-01-11 20:03:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166951-20170111170708.patch</filename>
            <type>text/plain</type>
            <size>5838</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTgxY2MxMGE1NzRiZGY0
NGRmNmEyMDVjNjMzNDg2ODg2ZGQxNjJlYy4uOTRlMzU2ODI2MWVlNjRkMTc0MWZlNzczNDNjZmVk
NTg1MTI4Mjc2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTAxLTExICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgSWNvbkxvYWRpbmdE
ZWxlZ2F0ZSBmdW5jdGlvbmFsaXR5IHRvIFdLVmlldy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Njk1MQorCisgICAgICAgIFJldmlld2VkIGJ5IFRp
bSBIb3J0b24uCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFy
YW1ldGVycy5tbToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFy
YW1ldGVyc0ludGVybmFsLmg6CisgICAgICAgIAorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvbWFj
L1dLVmlldy5tbToKKyAgICAgICAgKC1bV0tWaWV3IGRlYWxsb2NdKToKKyAgICAgICAgKC1bV0tW
aWV3IG1heWJlSW5zdGFsbEljb25Mb2FkaW5nQ2xpZW50XSk6IElmIHRoZSBzdWJjbGFzcyBpbXBs
ZW1lbnRzIHRoZSBkZWxlZ2F0ZSBtZXRob2QsIGluc3RhbGwgdGhlCisgICAgICAgICAgaWNvbiBs
b2FkaW5nIGNsaWVudC4gT3RoZXJ3aXNlLCBtYWludGFpbiB0aGUgbm9ybWFsIEljb25EYXRhYmFz
ZSBsb2FkaW5nIGJlaGF2aW9yLgorICAgICAgICAoLVtXS1ZpZXcgaW5pdFdpdGhGcmFtZTpwcm9j
ZXNzUG9vbDpjb25maWd1cmF0aW9uOndlYlZpZXc6XSk6CisKIDIwMTctMDEtMDYgIEd1c3Rhdm8g
Tm9yb25oYSBTaWx2YSAgPGd1c3Rhdm8ubm9yb25oYUBjb2xsYWJvcmEuY28udWs+CiAKICAgICAg
ICAgW0dUS10gU2hvdWxkIHN1cHBvcnQga2V5IGFuZCBjb2RlIHByb3BlcnRpZXMgb24ga2V5Ym9h
cmQgZXZlbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS0xpbmtJY29uUGFyYW1ldGVycy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLTGlua0ljb25QYXJhbWV0ZXJzLm1tCmluZGV4IGQ1NDVkZmM3ZmU4MWM2YzBhZWEw
MjM3YTVhOWJmZmE3Nzg1MDc5OWIuLjZjNDZkMWZhMTJiNThjOWUwOGZjNDE4ZWIxZjc1MWQ1ZWQ5
Y2ExN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dL
TGlua0ljb25QYXJhbWV0ZXJzLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLTGlua0ljb25QYXJhbWV0ZXJzLm1tCkBAIC0yNiw4ICsyNiw2IEBACiAjaW1wb3J0
ICJjb25maWcuaCIKICNpbXBvcnQgIl9XS0xpbmtJY29uUGFyYW1ldGVyc0ludGVybmFsLmgiCiAK
LSNpZiBXS19BUElfRU5BQkxFRAotCiAjaW1wb3J0IDxXZWJDb3JlL0xpbmtJY29uLmg+CiAKIEBp
bXBsZW1lbnRhdGlvbiBfV0tMaW5rSWNvblBhcmFtZXRlcnMgewpAQCAtODQsNSArODIsMyBAQCAt
IChXS0xpbmtJY29uVHlwZSlpY29uVHlwZQogfQogCiBAZW5kCi0KLSNlbmRpZiAvLyBXS19BUElf
RU5BQkxFRApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9f
V0tMaW5rSWNvblBhcmFtZXRlcnNJbnRlcm5hbC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tMaW5rSWNvblBhcmFtZXRlcnNJbnRlcm5hbC5oCmluZGV4IDI0MjFlNzFj
NThkZTU1ZDMzNmJmNTIzM2VhNzZjNjVhNjdjMjc4OTMuLmExZTVkOTYwNTE0OGNmNTFlNWQxNDQz
YjI1NjNkMzNlOGI0NzZlZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQ29jb2EvX1dLTGlua0ljb25QYXJhbWV0ZXJzSW50ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFyYW1ldGVyc0ludGVybmFsLmgK
QEAgLTI1LDggKzI1LDYgQEAKIAogI2ltcG9ydCAiX1dLTGlua0ljb25QYXJhbWV0ZXJzLmgiCiAK
LSNpZiBXS19BUElfRU5BQkxFRAotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBzdHJ1Y3QgTGlua0lj
b247CiB9CkBAIC0zNiw1ICszNCwzIEBAIHN0cnVjdCBMaW5rSWNvbjsKIC0gKGluc3RhbmNldHlw
ZSlfaW5pdFdpdGhMaW5rSWNvbjooY29uc3QgV2ViQ29yZTo6TGlua0ljb24mKWxpbmtJY29uOwog
CiBAZW5kCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9tYWMvV0tWaWV3Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3
Lm1tCmluZGV4IDJmZWYxYjBiYzVmNmRlNWUxNjg0Yjc4N2ExODdlOWE3Yzc4YWNmYzguLjQ2YTdh
NWY2MzA4MjM2NDYzNTI0OTI4YTI0MjkxYWQ3YzIyNDBhMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KQEAgLTI5LDggKzI5LDEwIEBACiAjaWYgUExBVEZP
Uk0oTUFDKQogCiAjaW1wb3J0ICJBUElIaXRUZXN0UmVzdWx0LmgiCisjaW1wb3J0ICJBUElJY29u
TG9hZGluZ0NsaWVudC5oIgogI2ltcG9ydCAiQVBJUGFnZUNvbmZpZ3VyYXRpb24uaCIKICNpbXBv
cnQgIldLQnJvd3NpbmdDb250ZXh0R3JvdXBQcml2YXRlLmgiCisjaW1wb3J0ICJXS05TRGF0YS5o
IgogI2ltcG9ydCAiV0tQcm9jZXNzR3JvdXBQcml2YXRlLmgiCiAjaW1wb3J0ICJXZWJCYWNrRm9y
d2FyZExpc3RJdGVtLmgiCiAjaW1wb3J0ICJXZWJLaXQySW5pdGlhbGl6ZS5oIgpAQCAtMzgsNiAr
NDAsOCBAQAogI2ltcG9ydCAiV2ViUHJlZmVyZW5jZXNLZXlzLmgiCiAjaW1wb3J0ICJXZWJQcm9j
ZXNzUG9vbC5oIgogI2ltcG9ydCAiV2ViVmlld0ltcGwuaCIKKyNpbXBvcnQgIl9XS0xpbmtJY29u
UGFyYW1ldGVyc0ludGVybmFsLmgiCisjaW1wb3J0IDx3dGYvQmxvY2tQdHIuaD4KIAogdXNpbmcg
bmFtZXNwYWNlIFdlYktpdDsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpAQCAtNzgsNiArODIs
NyBAQCAtIChpZClpbml0V2l0aEZyYW1lOihOU1JlY3QpZnJhbWUgcHJvY2Vzc0dyb3VwOihXS1By
b2Nlc3NHcm91cCAqKXByb2Nlc3NHcm91cCBicgogCiAtICh2b2lkKWRlYWxsb2MKIHsKKyAgICBf
ZGF0YS0+X2ltcGwtPnBhZ2UoKS5zZXRJY29uTG9hZGluZ0NsaWVudChudWxscHRyKTsKICAgICBf
ZGF0YS0+X2ltcGwgPSBudWxscHRyOwogCiAgICAgW19kYXRhIHJlbGVhc2VdOwpAQCAtODQ4LDYg
Kzg1Myw0NiBAQCAtIChOU0FycmF5ICopbmFtZXNPZlByb21pc2VkRmlsZXNEcm9wcGVkQXREZXN0
aW5hdGlvbjooTlNVUkwgKilkcm9wRGVzdGluYXRpb24KICAgICByZXR1cm4gX2RhdGEtPl9pbXBs
LT5uYW1lc09mUHJvbWlzZWRGaWxlc0Ryb3BwZWRBdERlc3RpbmF0aW9uKGRyb3BEZXN0aW5hdGlv
bik7CiB9CiAKKy0gKHZvaWQpbWF5YmVJbnN0YWxsSWNvbkxvYWRpbmdDbGllbnQKK3sKKyAgICBj
bGFzcyBJY29uTG9hZGluZ0NsaWVudCA6IHB1YmxpYyBBUEk6Okljb25Mb2FkaW5nQ2xpZW50IHsK
KyAgICBwdWJsaWM6CisgICAgICAgIGV4cGxpY2l0IEljb25Mb2FkaW5nQ2xpZW50KFdLVmlldyAq
d2tWaWV3KQorICAgICAgICAgICAgOiBtX3drVmlldyh3a1ZpZXcpCisgICAgICAgIHsKKyAgICAg
ICAgfQorCisgICAgICAgIHN0YXRpYyBTRUwgZGVsZWdhdGVTZWxlY3RvcigpCisgICAgICAgIHsK
KyAgICAgICAgICAgIHJldHVybiBzZWxfcmVnaXN0ZXJOYW1lKCJfc2hvdWxkTG9hZEljb25XaXRo
UGFyYW1ldGVyczpjb21wbGV0aW9uSGFuZGxlcjoiKTsKKyAgICAgICAgfQorCisgICAgcHJpdmF0
ZToKKyAgICAgICAgdHlwZWRlZiB2b2lkICheSWNvbkxvYWRDb21wbGV0aW9uSGFuZGxlcikoTlNE
YXRhKik7CisKKyAgICAgICAgdm9pZCBnZXRMb2FkRGVjaXNpb25Gb3JJY29uKGNvbnN0IFdlYkNv
cmU6OkxpbmtJY29uJiBsaW5rSWNvbiwgRnVuY3Rpb248dm9pZCAoc3RkOjpmdW5jdGlvbjx2b2lk
IChBUEk6OkRhdGEqLCBXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3IpPik+JiYgY29tcGxldGlv
bkhhbmRsZXIpIG92ZXJyaWRlIHsKKyAgICAgICAgICAgIFJldGFpblB0cjxfV0tMaW5rSWNvblBh
cmFtZXRlcnM+IHBhcmFtZXRlcnMgPSBhZG9wdE5TKFtbX1dLTGlua0ljb25QYXJhbWV0ZXJzIGFs
bG9jXSBfaW5pdFdpdGhMaW5rSWNvbjpsaW5rSWNvbl0pOworCisgICAgICAgICAgICBbbV93a1Zp
ZXcgcGVyZm9ybVNlbGVjdG9yOmRlbGVnYXRlU2VsZWN0b3IoKSB3aXRoT2JqZWN0OnBhcmFtZXRl
cnMuZ2V0KCkgd2l0aE9iamVjdDpedm9pZCAoSWNvbkxvYWRDb21wbGV0aW9uSGFuZGxlciBsb2Fk
Q29tcGxldGlvbkhhbmRsZXIpIHsKKyAgICAgICAgICAgICAgICBpZiAobG9hZENvbXBsZXRpb25I
YW5kbGVyKSB7CisgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFtsb2FkQ29t
cGxldGlvbkhhbmRsZXIgPSBCbG9ja1B0cjx2b2lkIChOU0RhdGEgKik+KGxvYWRDb21wbGV0aW9u
SGFuZGxlcildKEFQSTo6RGF0YSogZGF0YSwgV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVycm9yIGVy
cm9yKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgIT0gQ2FsbGJhY2tCYXNl
OjpFcnJvcjo6Tm9uZSB8fCAhZGF0YSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2Fk
Q29tcGxldGlvbkhhbmRsZXIobmlsKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBsb2FkQ29tcGxldGlvbkhhbmRsZXIod3JhcHBlcigq
ZGF0YSkpOworICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICB9IGVsc2UK
KyAgICAgICAgICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVsbHB0cik7CisgICAgICAg
ICAgICB9XTsKKyAgICAgICAgfQorCisgICAgICAgIFdLVmlldyAqbV93a1ZpZXc7CisgICAgfTsK
KworICAgIGlmIChbc2VsZiByZXNwb25kc1RvU2VsZWN0b3I6SWNvbkxvYWRpbmdDbGllbnQ6OmRl
bGVnYXRlU2VsZWN0b3IoKV0pCisgICAgICAgIF9kYXRhLT5faW1wbC0+cGFnZSgpLnNldEljb25M
b2FkaW5nQ2xpZW50KHN0ZDo6bWFrZV91bmlxdWU8SWNvbkxvYWRpbmdDbGllbnQ+KHNlbGYpKTsK
K30KKwogLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoRnJhbWU6KE5TUmVjdClmcmFtZSBwcm9jZXNz
UG9vbDooV2ViUHJvY2Vzc1Bvb2wmKXByb2Nlc3NQb29sIGNvbmZpZ3VyYXRpb246KFJlZjxBUEk6
OlBhZ2VDb25maWd1cmF0aW9uPiYmKWNvbmZpZ3VyYXRpb24gd2ViVmlldzooV0tXZWJWaWV3ICop
d2ViVmlldwogewogICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhGcmFtZTpmcmFtZV07CkBAIC04
NTksNiArOTA0LDggQEAgLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoRnJhbWU6KE5TUmVjdClmcmFt
ZSBwcm9jZXNzUG9vbDooV2ViUHJvY2Vzc1Bvb2wmKXByb2Nlc3MKICAgICBfZGF0YSA9IFtbV0tW
aWV3RGF0YSBhbGxvY10gaW5pdF07CiAgICAgX2RhdGEtPl9pbXBsID0gc3RkOjptYWtlX3VuaXF1
ZTxXZWJWaWV3SW1wbD4oc2VsZiwgd2ViVmlldywgcHJvY2Vzc1Bvb2wsIFdURk1vdmUoY29uZmln
dXJhdGlvbikpOwogCisgICAgW3NlbGYgbWF5YmVJbnN0YWxsSWNvbkxvYWRpbmdDbGllbnRdOwor
CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298654</attachid>
            <date>2017-01-11 20:03:47 -0800</date>
            <delta_ts>2017-01-11 21:38:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166951-20170111200209.patch</filename>
            <type>text/plain</type>
            <size>6554</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTgxY2MxMGE1NzRiZGY0
NGRmNmEyMDVjNjMzNDg2ODg2ZGQxNjJlYy4uYWRkMTg3NDFkYTJmOTExNGEwY2QxOTM2MDU3ZTQw
YjlhZDVmMWQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTAxLTExICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgSWNvbkxvYWRpbmdE
ZWxlZ2F0ZSBmdW5jdGlvbmFsaXR5IHRvIFdLVmlldy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Njk1MQorCisgICAgICAgIFJldmlld2VkIGJ5IFRp
bSBIb3J0b24uCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFy
YW1ldGVycy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGlua0ljb25QYXJh
bWV0ZXJzLm1tOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGlua0ljb25QYXJh
bWV0ZXJzSW50ZXJuYWwuaDoKKyAgICAgICAgCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9tYWMv
V0tWaWV3Lm1tOgorICAgICAgICAoLVtXS1ZpZXcgZGVhbGxvY10pOgorICAgICAgICAoLVtXS1Zp
ZXcgbWF5YmVJbnN0YWxsSWNvbkxvYWRpbmdDbGllbnRdKTogSWYgdGhlIHN1YmNsYXNzIGltcGxl
bWVudHMgdGhlIGRlbGVnYXRlIG1ldGhvZCwgaW5zdGFsbCB0aGUKKyAgICAgICAgICBpY29uIGxv
YWRpbmcgY2xpZW50LiBPdGhlcndpc2UsIG1haW50YWluIHRoZSBub3JtYWwgSWNvbkRhdGFiYXNl
IGxvYWRpbmcgYmVoYXZpb3IuCisgICAgICAgICgtW1dLVmlldyBpbml0V2l0aEZyYW1lOnByb2Nl
c3NQb29sOmNvbmZpZ3VyYXRpb246d2ViVmlldzpdKToKKwogMjAxNy0wMS0wNiAgR3VzdGF2byBO
b3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3JvbmhhQGNvbGxhYm9yYS5jby51az4KIAogICAgICAg
ICBbR1RLXSBTaG91bGQgc3VwcG9ydCBrZXkgYW5kIGNvZGUgcHJvcGVydGllcyBvbiBrZXlib2Fy
ZCBldmVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLTGlua0ljb25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS0xpbmtJY29uUGFyYW1ldGVycy5oCmluZGV4IDZiNDlhN2FjOTZhZDZmN2IzYTU0YjQx
NTY2NjAxMTgzYjQ1YjIzZDkuLjIwZmNjZWIxM2JhZTBlODAwODBhMmMzNmFhNWVlNjU5NTY3MWQw
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGlu
a0ljb25QYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tMaW5rSWNvblBhcmFtZXRlcnMuaApAQCAtMjQsOSArMjQsNiBAQAogICovCiAKICNpbXBv
cnQgPFdlYktpdC9XS0ZvdW5kYXRpb24uaD4KLQotI2lmIFdLX0FQSV9FTkFCTEVECi0KICNpbXBv
cnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgogCiB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2Vy
LCBXS0xpbmtJY29uVHlwZSkgewpAQCAtNDMsNSArNDAsMyBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJ
bnRlZ2VyLCBXS0xpbmtJY29uVHlwZSkgewogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5
LCBjb3B5KSBOU051bWJlciAqc2l6ZTsKIAogQGVuZAotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLTGlua0ljb25QYXJhbWV0ZXJzLm1t
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tMaW5rSWNvblBhcmFtZXRl
cnMubW0KaW5kZXggZDU0NWRmYzdmZTgxYzZjMGFlYTAyMzdhNWE5YmZmYTc3ODUwNzk5Yi4uNmM0
NmQxZmExMmI1OGM5ZTA4ZmM0MThlYjFmNzUxZDVlZDljYTE3YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tMaW5rSWNvblBhcmFtZXRlcnMubW0KKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tMaW5rSWNvblBhcmFtZXRl
cnMubW0KQEAgLTI2LDggKzI2LDYgQEAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiX1dL
TGlua0ljb25QYXJhbWV0ZXJzSW50ZXJuYWwuaCIKIAotI2lmIFdLX0FQSV9FTkFCTEVECi0KICNp
bXBvcnQgPFdlYkNvcmUvTGlua0ljb24uaD4KIAogQGltcGxlbWVudGF0aW9uIF9XS0xpbmtJY29u
UGFyYW1ldGVycyB7CkBAIC04NCw1ICs4MiwzIEBAIC0gKFdLTGlua0ljb25UeXBlKWljb25UeXBl
CiB9CiAKIEBlbmQKLQotI2VuZGlmIC8vIFdLX0FQSV9FTkFCTEVECmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFyYW1ldGVyc0ludGVy
bmFsLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0xpbmtJY29uUGFy
YW1ldGVyc0ludGVybmFsLmgKaW5kZXggMjQyMWU3MWM1OGRlNTVkMzM2YmY1MjMzZWE3NmM2NWE2
N2MyNzg5My4uYTFlNWQ5NjA1MTQ4Y2Y1MWU1ZDE0NDNiMjU2M2QzM2U4YjQ3NmVlZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tMaW5rSWNvblBhcmFt
ZXRlcnNJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLTGlua0ljb25QYXJhbWV0ZXJzSW50ZXJuYWwuaApAQCAtMjUsOCArMjUsNiBAQAogCiAjaW1w
b3J0ICJfV0tMaW5rSWNvblBhcmFtZXRlcnMuaCIKIAotI2lmIFdLX0FQSV9FTkFCTEVECi0KIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIHN0cnVjdCBMaW5rSWNvbjsKIH0KQEAgLTM2LDUgKzM0LDMgQEAg
c3RydWN0IExpbmtJY29uOwogLSAoaW5zdGFuY2V0eXBlKV9pbml0V2l0aExpbmtJY29uOihjb25z
dCBXZWJDb3JlOjpMaW5rSWNvbiYpbGlua0ljb247CiAKIEBlbmQKLQotI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0gYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KaW5kZXggMmZlZjFiMGJjNWY2ZGU1
ZTE2ODRiNzg3YTE4N2U5YTdjNzhhY2ZjOC4uNDZhN2E1ZjYzMDgyMzY0NjM1MjQ5MjhhMjQyOTFh
ZDdjMjI0MGExMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMv
V0tWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5t
bQpAQCAtMjksOCArMjksMTAgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNpbXBvcnQgIkFQSUhp
dFRlc3RSZXN1bHQuaCIKKyNpbXBvcnQgIkFQSUljb25Mb2FkaW5nQ2xpZW50LmgiCiAjaW1wb3J0
ICJBUElQYWdlQ29uZmlndXJhdGlvbi5oIgogI2ltcG9ydCAiV0tCcm93c2luZ0NvbnRleHRHcm91
cFByaXZhdGUuaCIKKyNpbXBvcnQgIldLTlNEYXRhLmgiCiAjaW1wb3J0ICJXS1Byb2Nlc3NHcm91
cFByaXZhdGUuaCIKICNpbXBvcnQgIldlYkJhY2tGb3J3YXJkTGlzdEl0ZW0uaCIKICNpbXBvcnQg
IldlYktpdDJJbml0aWFsaXplLmgiCkBAIC0zOCw2ICs0MCw4IEBACiAjaW1wb3J0ICJXZWJQcmVm
ZXJlbmNlc0tleXMuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NQb29sLmgiCiAjaW1wb3J0ICJXZWJW
aWV3SW1wbC5oIgorI2ltcG9ydCAiX1dLTGlua0ljb25QYXJhbWV0ZXJzSW50ZXJuYWwuaCIKKyNp
bXBvcnQgPHd0Zi9CbG9ja1B0ci5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogdXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7CkBAIC03OCw2ICs4Miw3IEBAIC0gKGlkKWluaXRXaXRoRnJhbWU6
KE5TUmVjdClmcmFtZSBwcm9jZXNzR3JvdXA6KFdLUHJvY2Vzc0dyb3VwICopcHJvY2Vzc0dyb3Vw
IGJyCiAKIC0gKHZvaWQpZGVhbGxvYwogeworICAgIF9kYXRhLT5faW1wbC0+cGFnZSgpLnNldElj
b25Mb2FkaW5nQ2xpZW50KG51bGxwdHIpOwogICAgIF9kYXRhLT5faW1wbCA9IG51bGxwdHI7CiAK
ICAgICBbX2RhdGEgcmVsZWFzZV07CkBAIC04NDgsNiArODUzLDQ2IEBAIC0gKE5TQXJyYXkgKilu
YW1lc09mUHJvbWlzZWRGaWxlc0Ryb3BwZWRBdERlc3RpbmF0aW9uOihOU1VSTCAqKWRyb3BEZXN0
aW5hdGlvbgogICAgIHJldHVybiBfZGF0YS0+X2ltcGwtPm5hbWVzT2ZQcm9taXNlZEZpbGVzRHJv
cHBlZEF0RGVzdGluYXRpb24oZHJvcERlc3RpbmF0aW9uKTsKIH0KIAorLSAodm9pZCltYXliZUlu
c3RhbGxJY29uTG9hZGluZ0NsaWVudAoreworICAgIGNsYXNzIEljb25Mb2FkaW5nQ2xpZW50IDog
cHVibGljIEFQSTo6SWNvbkxvYWRpbmdDbGllbnQgeworICAgIHB1YmxpYzoKKyAgICAgICAgZXhw
bGljaXQgSWNvbkxvYWRpbmdDbGllbnQoV0tWaWV3ICp3a1ZpZXcpCisgICAgICAgICAgICA6IG1f
d2tWaWV3KHdrVmlldykKKyAgICAgICAgeworICAgICAgICB9CisKKyAgICAgICAgc3RhdGljIFNF
TCBkZWxlZ2F0ZVNlbGVjdG9yKCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIHNlbF9y
ZWdpc3Rlck5hbWUoIl9zaG91bGRMb2FkSWNvbldpdGhQYXJhbWV0ZXJzOmNvbXBsZXRpb25IYW5k
bGVyOiIpOworICAgICAgICB9CisKKyAgICBwcml2YXRlOgorICAgICAgICB0eXBlZGVmIHZvaWQg
KF5JY29uTG9hZENvbXBsZXRpb25IYW5kbGVyKShOU0RhdGEqKTsKKworICAgICAgICB2b2lkIGdl
dExvYWREZWNpc2lvbkZvckljb24oY29uc3QgV2ViQ29yZTo6TGlua0ljb24mIGxpbmtJY29uLCBG
dW5jdGlvbjx2b2lkIChzdGQ6OmZ1bmN0aW9uPHZvaWQgKEFQSTo6RGF0YSosIFdlYktpdDo6Q2Fs
bGJhY2tCYXNlOjpFcnJvcik+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikgb3ZlcnJpZGUgeworICAg
ICAgICAgICAgUmV0YWluUHRyPF9XS0xpbmtJY29uUGFyYW1ldGVycz4gcGFyYW1ldGVycyA9IGFk
b3B0TlMoW1tfV0tMaW5rSWNvblBhcmFtZXRlcnMgYWxsb2NdIF9pbml0V2l0aExpbmtJY29uOmxp
bmtJY29uXSk7CisKKyAgICAgICAgICAgIFttX3drVmlldyBwZXJmb3JtU2VsZWN0b3I6ZGVsZWdh
dGVTZWxlY3RvcigpIHdpdGhPYmplY3Q6cGFyYW1ldGVycy5nZXQoKSB3aXRoT2JqZWN0Ol52b2lk
IChJY29uTG9hZENvbXBsZXRpb25IYW5kbGVyIGxvYWRDb21wbGV0aW9uSGFuZGxlcikgeworICAg
ICAgICAgICAgICAgIGlmIChsb2FkQ29tcGxldGlvbkhhbmRsZXIpIHsKKyAgICAgICAgICAgICAg
ICAgICAgY29tcGxldGlvbkhhbmRsZXIoW2xvYWRDb21wbGV0aW9uSGFuZGxlciA9IEJsb2NrUHRy
PHZvaWQgKE5TRGF0YSAqKT4obG9hZENvbXBsZXRpb25IYW5kbGVyKV0oQVBJOjpEYXRhKiBkYXRh
LCBXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3IgZXJyb3IpIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGlmIChlcnJvciAhPSBDYWxsYmFja0Jhc2U6OkVycm9yOjpOb25lIHx8ICFkYXRhKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRDb21wbGV0aW9uSGFuZGxlcihuaWwpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGxvYWRDb21wbGV0aW9uSGFuZGxlcih3cmFwcGVyKCpkYXRhKSk7CisgICAgICAgICAgICAgICAg
ICAgIH0pOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcihudWxscHRyKTsKKyAgICAgICAgICAgIH1dOworICAgICAgICB9CisKKyAg
ICAgICAgV0tWaWV3ICptX3drVmlldzsKKyAgICB9OworCisgICAgaWYgKFtzZWxmIHJlc3BvbmRz
VG9TZWxlY3RvcjpJY29uTG9hZGluZ0NsaWVudDo6ZGVsZWdhdGVTZWxlY3RvcigpXSkKKyAgICAg
ICAgX2RhdGEtPl9pbXBsLT5wYWdlKCkuc2V0SWNvbkxvYWRpbmdDbGllbnQoc3RkOjptYWtlX3Vu
aXF1ZTxJY29uTG9hZGluZ0NsaWVudD4oc2VsZikpOworfQorCiAtIChpbnN0YW5jZXR5cGUpaW5p
dFdpdGhGcmFtZTooTlNSZWN0KWZyYW1lIHByb2Nlc3NQb29sOihXZWJQcm9jZXNzUG9vbCYpcHJv
Y2Vzc1Bvb2wgY29uZmlndXJhdGlvbjooUmVmPEFQSTo6UGFnZUNvbmZpZ3VyYXRpb24+JiYpY29u
ZmlndXJhdGlvbiB3ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3CiB7CiAgICAgc2VsZiA9IFtz
dXBlciBpbml0V2l0aEZyYW1lOmZyYW1lXTsKQEAgLTg1OSw2ICs5MDQsOCBAQCAtIChpbnN0YW5j
ZXR5cGUpaW5pdFdpdGhGcmFtZTooTlNSZWN0KWZyYW1lIHByb2Nlc3NQb29sOihXZWJQcm9jZXNz
UG9vbCYpcHJvY2VzcwogICAgIF9kYXRhID0gW1tXS1ZpZXdEYXRhIGFsbG9jXSBpbml0XTsKICAg
ICBfZGF0YS0+X2ltcGwgPSBzdGQ6Om1ha2VfdW5pcXVlPFdlYlZpZXdJbXBsPihzZWxmLCB3ZWJW
aWV3LCBwcm9jZXNzUG9vbCwgV1RGTW92ZShjb25maWd1cmF0aW9uKSk7CiAKKyAgICBbc2VsZiBt
YXliZUluc3RhbGxJY29uTG9hZGluZ0NsaWVudF07CisKICAgICByZXR1cm4gc2VsZjsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298659</attachid>
            <date>2017-01-11 21:38:41 -0800</date>
            <delta_ts>2017-01-11 21:38:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166951-20170111213702.patch</filename>
            <type>text/plain</type>
            <size>4500</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwNTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTgxY2MxMGE1NzRiZGY0
NGRmNmEyMDVjNjMzNDg2ODg2ZGQxNjJlYy4uNWYyNjE3NTJjZWQ0MjUwZmFjYTY0ZjM3YzViNzNi
OTAxZjI1YmJhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE3LTAxLTExICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgSWNvbkxvYWRpbmdE
ZWxlZ2F0ZSBmdW5jdGlvbmFsaXR5IHRvIFdLVmlldy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Njk1MQorCisgICAgICAgIFJldmlld2VkIGJ5IFRp
bSBIb3J0b24uCisgICAgICAgIAorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5t
bToKKyAgICAgICAgKC1bV0tWaWV3IGRlYWxsb2NdKToKKyAgICAgICAgKC1bV0tWaWV3IG1heWJl
SW5zdGFsbEljb25Mb2FkaW5nQ2xpZW50XSk6IElmIHRoZSBzdWJjbGFzcyBpbXBsZW1lbnRzIHRo
ZSBkZWxlZ2F0ZSBtZXRob2QsIGluc3RhbGwgdGhlCisgICAgICAgICAgaWNvbiBsb2FkaW5nIGNs
aWVudC4gT3RoZXJ3aXNlLCBtYWludGFpbiB0aGUgbm9ybWFsIEljb25EYXRhYmFzZSBsb2FkaW5n
IGJlaGF2aW9yLgorICAgICAgICAoLVtXS1ZpZXcgaW5pdFdpdGhGcmFtZTpwcm9jZXNzUG9vbDpj
b25maWd1cmF0aW9uOndlYlZpZXc6XSk6CisKIDIwMTctMDEtMDYgIEd1c3Rhdm8gTm9yb25oYSBT
aWx2YSAgPGd1c3Rhdm8ubm9yb25oYUBjb2xsYWJvcmEuY28udWs+CiAKICAgICAgICAgW0dUS10g
U2hvdWxkIHN1cHBvcnQga2V5IGFuZCBjb2RlIHByb3BlcnRpZXMgb24ga2V5Ym9hcmQgZXZlbnRz
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0g
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KaW5kZXggMmZlZjFi
MGJjNWY2ZGU1ZTE2ODRiNzg3YTE4N2U5YTdjNzhhY2ZjOC4uNTgwYzg3MDc0MWQwNjRkYjJmNTU3
YjQyZDRmMzRiMTVjZGQwYWU4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9tYWMvV0tWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFj
L1dLVmlldy5tbQpAQCAtMjksOCArMjksMTAgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNpbXBv
cnQgIkFQSUhpdFRlc3RSZXN1bHQuaCIKKyNpbXBvcnQgIkFQSUljb25Mb2FkaW5nQ2xpZW50Lmgi
CiAjaW1wb3J0ICJBUElQYWdlQ29uZmlndXJhdGlvbi5oIgogI2ltcG9ydCAiV0tCcm93c2luZ0Nv
bnRleHRHcm91cFByaXZhdGUuaCIKKyNpbXBvcnQgIldLTlNEYXRhLmgiCiAjaW1wb3J0ICJXS1By
b2Nlc3NHcm91cFByaXZhdGUuaCIKICNpbXBvcnQgIldlYkJhY2tGb3J3YXJkTGlzdEl0ZW0uaCIK
ICNpbXBvcnQgIldlYktpdDJJbml0aWFsaXplLmgiCkBAIC0zOCw2ICs0MCw4IEBACiAjaW1wb3J0
ICJXZWJQcmVmZXJlbmNlc0tleXMuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NQb29sLmgiCiAjaW1w
b3J0ICJXZWJWaWV3SW1wbC5oIgorI2ltcG9ydCAiX1dLTGlua0ljb25QYXJhbWV0ZXJzSW50ZXJu
YWwuaCIKKyNpbXBvcnQgPHd0Zi9CbG9ja1B0ci5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0
OwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBAIC03OCw2ICs4Miw3IEBAIC0gKGlkKWluaXRX
aXRoRnJhbWU6KE5TUmVjdClmcmFtZSBwcm9jZXNzR3JvdXA6KFdLUHJvY2Vzc0dyb3VwICopcHJv
Y2Vzc0dyb3VwIGJyCiAKIC0gKHZvaWQpZGVhbGxvYwogeworICAgIF9kYXRhLT5faW1wbC0+cGFn
ZSgpLnNldEljb25Mb2FkaW5nQ2xpZW50KG51bGxwdHIpOwogICAgIF9kYXRhLT5faW1wbCA9IG51
bGxwdHI7CiAKICAgICBbX2RhdGEgcmVsZWFzZV07CkBAIC04NDgsNiArODUzLDQ4IEBAIC0gKE5T
QXJyYXkgKiluYW1lc09mUHJvbWlzZWRGaWxlc0Ryb3BwZWRBdERlc3RpbmF0aW9uOihOU1VSTCAq
KWRyb3BEZXN0aW5hdGlvbgogICAgIHJldHVybiBfZGF0YS0+X2ltcGwtPm5hbWVzT2ZQcm9taXNl
ZEZpbGVzRHJvcHBlZEF0RGVzdGluYXRpb24oZHJvcERlc3RpbmF0aW9uKTsKIH0KIAorLSAodm9p
ZCltYXliZUluc3RhbGxJY29uTG9hZGluZ0NsaWVudAoreworI2lmIFdLX0FQSV9FTkFCTEVECisg
ICAgY2xhc3MgSWNvbkxvYWRpbmdDbGllbnQgOiBwdWJsaWMgQVBJOjpJY29uTG9hZGluZ0NsaWVu
dCB7CisgICAgcHVibGljOgorICAgICAgICBleHBsaWNpdCBJY29uTG9hZGluZ0NsaWVudChXS1Zp
ZXcgKndrVmlldykKKyAgICAgICAgICAgIDogbV93a1ZpZXcod2tWaWV3KQorICAgICAgICB7Cisg
ICAgICAgIH0KKworICAgICAgICBzdGF0aWMgU0VMIGRlbGVnYXRlU2VsZWN0b3IoKQorICAgICAg
ICB7CisgICAgICAgICAgICByZXR1cm4gc2VsX3JlZ2lzdGVyTmFtZSgiX3Nob3VsZExvYWRJY29u
V2l0aFBhcmFtZXRlcnM6Y29tcGxldGlvbkhhbmRsZXI6Iik7CisgICAgICAgIH0KKworICAgIHBy
aXZhdGU6CisgICAgICAgIHR5cGVkZWYgdm9pZCAoXkljb25Mb2FkQ29tcGxldGlvbkhhbmRsZXIp
KE5TRGF0YSopOworCisgICAgICAgIHZvaWQgZ2V0TG9hZERlY2lzaW9uRm9ySWNvbihjb25zdCBX
ZWJDb3JlOjpMaW5rSWNvbiYgbGlua0ljb24sIEZ1bmN0aW9uPHZvaWQgKHN0ZDo6ZnVuY3Rpb248
dm9pZCAoQVBJOjpEYXRhKiwgV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVycm9yKT4pPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKSBvdmVycmlkZSB7CisgICAgICAgICAgICBSZXRhaW5QdHI8X1dLTGlua0lj
b25QYXJhbWV0ZXJzPiBwYXJhbWV0ZXJzID0gYWRvcHROUyhbW19XS0xpbmtJY29uUGFyYW1ldGVy
cyBhbGxvY10gX2luaXRXaXRoTGlua0ljb246bGlua0ljb25dKTsKKworICAgICAgICAgICAgW21f
d2tWaWV3IHBlcmZvcm1TZWxlY3RvcjpkZWxlZ2F0ZVNlbGVjdG9yKCkgd2l0aE9iamVjdDpwYXJh
bWV0ZXJzLmdldCgpIHdpdGhPYmplY3Q6XnZvaWQgKEljb25Mb2FkQ29tcGxldGlvbkhhbmRsZXIg
bG9hZENvbXBsZXRpb25IYW5kbGVyKSB7CisgICAgICAgICAgICAgICAgaWYgKGxvYWRDb21wbGV0
aW9uSGFuZGxlcikgeworICAgICAgICAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihbbG9h
ZENvbXBsZXRpb25IYW5kbGVyID0gQmxvY2tQdHI8dm9pZCAoTlNEYXRhICopPihsb2FkQ29tcGxl
dGlvbkhhbmRsZXIpXShBUEk6OkRhdGEqIGRhdGEsIFdlYktpdDo6Q2FsbGJhY2tCYXNlOjpFcnJv
ciBlcnJvcikgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yICE9IENhbGxiYWNr
QmFzZTo6RXJyb3I6Ok5vbmUgfHwgIWRhdGEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
bG9hZENvbXBsZXRpb25IYW5kbGVyKG5pbCk7CisgICAgICAgICAgICAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9hZENvbXBsZXRpb25IYW5kbGVyKHdyYXBw
ZXIoKmRhdGEpKTsKKyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgfSBl
bHNlCisgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOworICAg
ICAgICAgICAgfV07CisgICAgICAgIH0KKworICAgICAgICBXS1ZpZXcgKm1fd2tWaWV3OworICAg
IH07CisKKyAgICBpZiAoW3NlbGYgcmVzcG9uZHNUb1NlbGVjdG9yOkljb25Mb2FkaW5nQ2xpZW50
OjpkZWxlZ2F0ZVNlbGVjdG9yKCldKQorICAgICAgICBfZGF0YS0+X2ltcGwtPnBhZ2UoKS5zZXRJ
Y29uTG9hZGluZ0NsaWVudChzdGQ6Om1ha2VfdW5pcXVlPEljb25Mb2FkaW5nQ2xpZW50PihzZWxm
KSk7CisjZW5kaWYgLy8gV0tfQVBJX0VOQUJMRUQKK30KKwogLSAoaW5zdGFuY2V0eXBlKWluaXRX
aXRoRnJhbWU6KE5TUmVjdClmcmFtZSBwcm9jZXNzUG9vbDooV2ViUHJvY2Vzc1Bvb2wmKXByb2Nl
c3NQb29sIGNvbmZpZ3VyYXRpb246KFJlZjxBUEk6OlBhZ2VDb25maWd1cmF0aW9uPiYmKWNvbmZp
Z3VyYXRpb24gd2ViVmlldzooV0tXZWJWaWV3ICopd2ViVmlldwogewogICAgIHNlbGYgPSBbc3Vw
ZXIgaW5pdFdpdGhGcmFtZTpmcmFtZV07CkBAIC04NTksNiArOTA2LDggQEAgLSAoaW5zdGFuY2V0
eXBlKWluaXRXaXRoRnJhbWU6KE5TUmVjdClmcmFtZSBwcm9jZXNzUG9vbDooV2ViUHJvY2Vzc1Bv
b2wmKXByb2Nlc3MKICAgICBfZGF0YSA9IFtbV0tWaWV3RGF0YSBhbGxvY10gaW5pdF07CiAgICAg
X2RhdGEtPl9pbXBsID0gc3RkOjptYWtlX3VuaXF1ZTxXZWJWaWV3SW1wbD4oc2VsZiwgd2ViVmll
dywgcHJvY2Vzc1Bvb2wsIFdURk1vdmUoY29uZmlndXJhdGlvbikpOwogCisgICAgW3NlbGYgbWF5
YmVJbnN0YWxsSWNvbkxvYWRpbmdDbGllbnRdOworCiAgICAgcmV0dXJuIHNlbGY7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>