<?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>144601</bug_id>
          
          <creation_ts>2015-05-04 15:26:51 -0700</creation_ts>
          <short_desc>RenderWidget::setWidgetGeometry() can end up destroying *this*.</short_desc>
          <delta_ts>2015-05-05 09:09:08 -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>Layout and Rendering</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kling</cc>
    
    <cc>kondapallykalyan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1091548</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2015-05-04 15:26:51 -0700</bug_when>
    <thetext>Refcount RenderWidget so that we don&apos;t end up with an invalid *this* during layout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091549</commentid>
    <comment_count>1</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2015-05-04 15:27:29 -0700</bug_when>
    <thetext>rdar://problem/20753994</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091560</commentid>
    <comment_count>2</comment_count>
      <attachid>252342</attachid>
    <who name="alan">zalan</who>
    <bug_when>2015-05-04 15:43:24 -0700</bug_when>
    <thetext>Created attachment 252342
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091593</commentid>
    <comment_count>3</comment_count>
      <attachid>252342</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-05-04 16:24:47 -0700</bug_when>
    <thetext>Comment on attachment 252342
Patch

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

&gt; Source/WebCore/rendering/RenderView.cpp:361
&gt; +    releaseProtectedRenderWidgets();

Let&apos;s move this to FrameView instead so it also works for subtree layouts.

&gt; Source/WebCore/rendering/RenderWidget.h:77
&gt; +    inline void ref() { ++m_refCount; }

No need to specify &quot;inline&quot; here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091594</commentid>
    <comment_count>4</comment_count>
      <attachid>252342</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-05-04 16:24:47 -0700</bug_when>
    <thetext>Comment on attachment 252342
Patch

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

&gt; Source/WebCore/rendering/RenderView.cpp:361
&gt; +    releaseProtectedRenderWidgets();

Let&apos;s move this to FrameView instead so it also works for subtree layouts.

&gt; Source/WebCore/rendering/RenderWidget.h:77
&gt; +    inline void ref() { ++m_refCount; }

No need to specify &quot;inline&quot; here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091596</commentid>
    <comment_count>5</comment_count>
      <attachid>252350</attachid>
    <who name="alan">zalan</who>
    <bug_when>2015-05-04 16:35:13 -0700</bug_when>
    <thetext>Created attachment 252350
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091597</commentid>
    <comment_count>6</comment_count>
      <attachid>252350</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-05-04 16:37:24 -0700</bug_when>
    <thetext>Comment on attachment 252350
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091598</commentid>
    <comment_count>7</comment_count>
      <attachid>252350</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-05-04 16:37:48 -0700</bug_when>
    <thetext>Comment on attachment 252350
Patch

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

&gt; Source/WebCore/rendering/RenderObject.cpp:2028
&gt; +    if (is&lt;RenderWidget&gt;(this)) {

if (is&lt;RenderWidget&gt;(*this)) to avoid unnecessary null check

&gt; Source/WebCore/rendering/RenderObject.cpp:2029
&gt; +        downcast&lt;RenderWidget&gt;(this)-&gt;deref();

We usually do: downcast&lt;RenderWidget&gt;(*this).deref();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091602</commentid>
    <comment_count>8</comment_count>
      <attachid>252351</attachid>
    <who name="alan">zalan</who>
    <bug_when>2015-05-04 16:45:49 -0700</bug_when>
    <thetext>Created attachment 252351
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091607</commentid>
    <comment_count>9</comment_count>
      <attachid>252353</attachid>
    <who name="alan">zalan</who>
    <bug_when>2015-05-04 16:48:51 -0700</bug_when>
    <thetext>Created attachment 252353
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091673</commentid>
    <comment_count>10</comment_count>
      <attachid>252353</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-04 20:23:56 -0700</bug_when>
    <thetext>Comment on attachment 252353
Patch

Clearing flags on attachment: 252353

Committed r183788: &lt;http://trac.webkit.org/changeset/183788&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091674</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-04 20:23:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091781</commentid>
    <comment_count>12</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-05-05 09:09:08 -0700</bug_when>
    <thetext>I’m disappointed that we have to add back the reference counting here. And doubly disappointed that we are not using the RefCounted template for the reference counting.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252342</attachid>
            <date>2015-05-04 15:43:24 -0700</date>
            <delta_ts>2015-05-04 16:25:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144601-20150504154209.patch</filename>
            <type>text/plain</type>
            <size>8877</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTY5YWEzZTc3YzZkZWJj
NTI3NDZjZGYxZGY2ODFjOWZhOTFhMzJiZS4uYTE3ZWYwZjkzYTMwZWY0ZDk2YTE1YWM5NmI5NWM1
MzE4YzdmMWE2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE1LTA1LTA0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuZGVyV2lkZ2V0OjpzZXRX
aWRnZXRHZW9tZXRyeSgpIGNhbiBlbmQgdXAgZGVzdHJveWluZyAqdGhpcyouCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQ2MDEKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGEgc3BlY3VsYXRp
dmUgZml4IHRvIGVuc3VyZSB3ZSBkb24ndCBjcmFzaCBvbiBhbiBpbnZhbGlkICp0aGlzKiByZW5k
ZXJlcgorICAgICAgICB3aGlsZSBmbGF0dGVuaW5nIHRoZSBjdXJyZW50IGlmcmFtZS4KKyAgICAg
ICAgQ2FsbGluZyBSZW5kZXJXaWRnZXQ6OnNldFdpZGdldEdlb21ldHJ5KCkgY2FuIHJlc3VsdCBp
biBkZXN0cm95aW5nIHRoZSBjdXJyZW50IHJlbmRlcmVyLgorICAgICAgICBXaGlsZSBpdCBpcyBu
b3QgYSBpc3N1ZSBpbiBjYXNlIG9mIG5vcm1hbCBsYXlvdXQgZmxvdyBhcyB3aWRnZXQgcG9zaXRp
b25zIGFyZSB1cGRhdGVkIGF0IHBvc3QgbGF5b3V0LAorICAgICAgICBmcmFtZSBmbGF0dGVuaW5n
IGluaXRpYXRlcyB0aGlzIGFjdGlvbiBpbiB0aGUgbWlkZGxlIG9mIGxheW91dC4KKyAgICAgICAg
VGhpcyBwYXRjaCByZS1pbnRyb2R1Y2VzIHJlZmNvdW50IG1vZGVsIGZvciBSZW5kZXJXaWRnZXRz
IHNvIHRoYXQgdGhlIHJlbmRlcmVyIGlzIHByb3RlY3RlZCBkdXJpbmcgbGF5b3V0CisgICAgICAg
IHdoZW4gZnJhbWUgZmxhdHRlbmluZyBpcyBpbiB1c2UuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyRnJhbWVCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZyYW1lQmFzZTo6
bGF5b3V0V2l0aEZsYXR0ZW5pbmcpOiBMZXQncyBiZSBwYXJhbm9pZCBhYm91dCBjaGlsZCB2aWV3
LgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyT2JqZWN0OjpkZXN0cm95KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVmll
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJWaWV3OjpsYXlvdXQpOgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJWaWV3Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlcldpZGdl
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJXaWRnZXQ6On5SZW5kZXJXaWRnZXQpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJXaWRnZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlcldpZGdldDo6cmVmKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlcldpZGdldDo6ZGVyZWYp
OgorCiAyMDE1LTA1LTA0ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtpT1NdIENyYXNoIGluIC1bV2ViQ0FMYXllckhvc3RXcmFwcGVyIHJlc29sdmVCb3VuZHNd
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhbWVCYXNlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFtZUJhc2UuY3BwCmluZGV4IDky
NWEwNzM4OTkyNjYxZDVmZmRkMWM1ZmQ3OTUyNjQyZjFlZTliOGYuLjk1ZWJlNzNjMWI5OWYyNzE4
MzJjOTQwODhhNTVkYWM0ZWM5YTQ2NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJGcmFtZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJGcmFtZUJhc2UuY3BwCkBAIC01NCwxMyArNTQsMTMgQEAgaW5saW5lIGJvb2wgc2hvdWxk
RXhwYW5kRnJhbWUoTGF5b3V0VW5pdCB3aWR0aCwgTGF5b3V0VW5pdCBoZWlnaHQsIGJvb2wgaGFz
Rml4ZWQKIAogdm9pZCBSZW5kZXJGcmFtZUJhc2U6OmxheW91dFdpdGhGbGF0dGVuaW5nKGJvb2wg
aGFzRml4ZWRXaWR0aCwgYm9vbCBoYXNGaXhlZEhlaWdodCkKIHsKLSAgICBGcmFtZVZpZXcqIGNo
aWxkRnJhbWVWaWV3ID0gY2hpbGRWaWV3KCk7Ci0gICAgUmVuZGVyVmlldyogY2hpbGRSb290ID0g
Y2hpbGRGcmFtZVZpZXcgPyBjaGlsZEZyYW1lVmlldy0+ZnJhbWUoKS5jb250ZW50UmVuZGVyZXIo
KSA6IDA7CisgICAgdmlldygpLnByb3RlY3RSZW5kZXJXaWRnZXRVbnRpbExheW91dElzRG9uZSh0
aGlzKTsKKyAgICBSZW5kZXJWaWV3KiBjaGlsZFJvb3QgPSBjaGlsZFZpZXcoKSA/IGNoaWxkVmll
dygpLT5mcmFtZSgpLmNvbnRlbnRSZW5kZXJlcigpIDogMDsKIAogICAgIGlmICghY2hpbGRSb290
IHx8ICFzaG91bGRFeHBhbmRGcmFtZSh3aWR0aCgpLCBoZWlnaHQoKSwgaGFzRml4ZWRXaWR0aCwg
aGFzRml4ZWRIZWlnaHQpKSB7CiAgICAgICAgIHVwZGF0ZVdpZGdldFBvc2l0aW9uKCk7Ci0gICAg
ICAgIGlmIChjaGlsZEZyYW1lVmlldykKLSAgICAgICAgICAgIGNoaWxkRnJhbWVWaWV3LT5sYXlv
dXQoKTsKKyAgICAgICAgaWYgKGNoaWxkVmlldygpKQorICAgICAgICAgICAgY2hpbGRWaWV3KCkt
PmxheW91dCgpOwogICAgICAgICBjbGVhck5lZWRzTGF5b3V0KCk7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CkBAIC04MywxOCArODMsMjAgQEAgdm9pZCBSZW5kZXJGcmFtZUJhc2U6OmxheW91dFdp
dGhGbGF0dGVuaW5nKGJvb2wgaGFzRml4ZWRXaWR0aCwgYm9vbCBoYXNGaXhlZEhlaWcKICAgICAg
ICAgc2V0V2lkdGgoc3RkOjptYXgod2lkdGgoKSwgY2hpbGRSb290LT5taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGgoKSArIGhCb3JkZXIpKTsKICAgICAgICAgLy8gdXBkYXRlIGFnYWluIHRvIHBhc3Mg
dGhlIG5ldyB3aWR0aCB0byB0aGUgY2hpbGQgZnJhbWUKICAgICAgICAgdXBkYXRlV2lkZ2V0UG9z
aXRpb24oKTsKLSAgICAgICAgY2hpbGRGcmFtZVZpZXctPmxheW91dCgpOworICAgICAgICBpZiAo
Y2hpbGRWaWV3KCkpCisgICAgICAgICAgICBjaGlsZFZpZXcoKS0+bGF5b3V0KCk7CiAgICAgfQog
Ci0gICAgLy8gZXhwYW5kIHRoZSBmcmFtZSBieSBzZXR0aW5nIGZyYW1lIGhlaWdodCA9IGNvbnRl
bnQgaGVpZ2h0Ci0gICAgaWYgKGlzU2Nyb2xsYWJsZSB8fCAhaGFzRml4ZWRIZWlnaHQgfHwgY2hp
bGRSb290LT5pc0ZyYW1lU2V0KCkpCi0gICAgICAgIHNldEhlaWdodChzdGQ6Om1heDxMYXlvdXRV
bml0PihoZWlnaHQoKSwgY2hpbGRGcmFtZVZpZXctPmNvbnRlbnRzSGVpZ2h0KCkgKyB2Qm9yZGVy
KSk7Ci0gICAgaWYgKGlzU2Nyb2xsYWJsZSB8fCAhaGFzRml4ZWRXaWR0aCB8fCBjaGlsZFJvb3Qt
PmlzRnJhbWVTZXQoKSkKLSAgICAgICAgc2V0V2lkdGgoc3RkOjptYXg8TGF5b3V0VW5pdD4od2lk
dGgoKSwgY2hpbGRGcmFtZVZpZXctPmNvbnRlbnRzV2lkdGgoKSArIGhCb3JkZXIpKTsKLQorICAg
IGlmIChjaGlsZFZpZXcoKSkgeworICAgICAgICAvLyBleHBhbmQgdGhlIGZyYW1lIGJ5IHNldHRp
bmcgZnJhbWUgaGVpZ2h0ID0gY29udGVudCBoZWlnaHQKKyAgICAgICAgaWYgKGlzU2Nyb2xsYWJs
ZSB8fCAhaGFzRml4ZWRIZWlnaHQgfHwgY2hpbGRSb290LT5pc0ZyYW1lU2V0KCkpCisgICAgICAg
ICAgICBzZXRIZWlnaHQoc3RkOjptYXg8TGF5b3V0VW5pdD4oaGVpZ2h0KCksIGNoaWxkVmlldygp
LT5jb250ZW50c0hlaWdodCgpICsgdkJvcmRlcikpOworICAgICAgICBpZiAoaXNTY3JvbGxhYmxl
IHx8ICFoYXNGaXhlZFdpZHRoIHx8IGNoaWxkUm9vdC0+aXNGcmFtZVNldCgpKQorICAgICAgICAg
ICAgc2V0V2lkdGgoc3RkOjptYXg8TGF5b3V0VW5pdD4od2lkdGgoKSwgY2hpbGRWaWV3KCktPmNv
bnRlbnRzV2lkdGgoKSArIGhCb3JkZXIpKTsKKyAgICB9CiAgICAgdXBkYXRlV2lkZ2V0UG9zaXRp
b24oKTsKIAotICAgIEFTU0VSVCghY2hpbGRGcmFtZVZpZXctPmxheW91dFBlbmRpbmcoKSk7Cisg
ICAgQVNTRVJUKCFjaGlsZFZpZXcoKS0+bGF5b3V0UGVuZGluZygpKTsKICAgICBBU1NFUlQoIWNo
aWxkUm9vdC0+bmVlZHNMYXlvdXQoKSk7CiAgICAgQVNTRVJUKCFjaGlsZFJvb3QtPmZpcnN0Q2hp
bGQoKSB8fCAhY2hpbGRSb290LT5maXJzdENoaWxkKCktPmZpcnN0Q2hpbGRTbG93KCkgfHwgIWNo
aWxkUm9vdC0+Zmlyc3RDaGlsZCgpLT5maXJzdENoaWxkU2xvdygpLT5uZWVkc0xheW91dCgpKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAppbmRleCBmYmI1ZDc4
NmM4ZDgzNzI4NDk1Y2JlODgzYjlkZWU1OWY0YTFlMjFhLi43MTk1YWI4OGYxN2ZjYzNkZGE2Yzgy
Mjc1ZTExMDI5OTZiN2I4NjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2Jq
ZWN0LmNwcApAQCAtNjAsNiArNjAsNyBAQAogI2luY2x1ZGUgIlJlbmRlclNjcm9sbGJhclBhcnQu
aCIKICNpbmNsdWRlICJSZW5kZXJUaGVtZS5oIgogI2luY2x1ZGUgIlJlbmRlclZpZXcuaCIKKyNp
bmNsdWRlICJSZW5kZXJXaWRnZXQuaCIKICNpbmNsdWRlICJTVkdSZW5kZXJTdXBwb3J0LmgiCiAj
aW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgiCkBAIC0yMDI0
LDYgKzIwMjUsMTAgQEAgdm9pZCBSZW5kZXJPYmplY3Q6OmRlc3Ryb3koKQogI2VuZGlmCiAKICAg
ICB3aWxsQmVEZXN0cm95ZWQoKTsKKyAgICBpZiAoaXM8UmVuZGVyV2lkZ2V0Pih0aGlzKSkgewor
ICAgICAgICBkb3duY2FzdDxSZW5kZXJXaWRnZXQ+KHRoaXMpLT5kZXJlZigpOworICAgICAgICBy
ZXR1cm47CisgICAgfQogICAgIGRlbGV0ZSB0aGlzOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVmlldy5jcHAKaW5kZXggYmMxMzUxYWFjZDc5MGMxYWM0MjE5NTZiYjNiYzU4YTIx
MDQ5ZmZjOS4uNzEyNjkxYTQ5MWU1MWVlOTg2NGM4Y2Q0N2Q0MGNjYWU3ZjFkMTE3YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcApAQCAtMzU4LDcgKzM1OCw3IEBAIHZv
aWQgUmVuZGVyVmlldzo6bGF5b3V0KCkKICAgICAgICAgbGF5b3V0Q29udGVudCgqbV9sYXlvdXRT
dGF0ZSk7CiAKICAgICBsYXlvdXRDb250ZW50VG9Db21wdXRlT3ZlcmZsb3dJblJlZ2lvbnMoKm1f
bGF5b3V0U3RhdGUpOwotCisgICAgcmVsZWFzZVByb3RlY3RlZFJlbmRlcldpZGdldHMoKTsKICNp
Zm5kZWYgTkRFQlVHCiAgICAgY2hlY2tMYXlvdXRTdGF0ZSgqbV9sYXlvdXRTdGF0ZSk7CiAjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCmluZGV4IGMxYWE5ZmEyMzljMjYz
MDYzNTI2ZTJlNjI4MTcyN2RiNDcyMTIyNzQuLmViY2YyMTMzZTQyOTNjZmNhOTljNjk5NWE1MDg0
YjZmMDI2MDMzYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJW
aWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaApAQCAtMjYs
NiArMjYsNyBAQAogI2luY2x1ZGUgIkxheW91dFN0YXRlLmgiCiAjaW5jbHVkZSAiUmVnaW9uLmgi
CiAjaW5jbHVkZSAiUmVuZGVyQmxvY2tGbG93LmgiCisjaW5jbHVkZSAiUmVuZGVyV2lkZ2V0Lmgi
CiAjaW5jbHVkZSAiU2VsZWN0aW9uU3VidHJlZVJvb3QuaCIKICNpbmNsdWRlIDxtZW1vcnk+CiAj
aW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KQEAgLTI0NCw2ICsyNDUsOCBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzY2hlZHVsZUxhenlSZXBhaW50KFJlbmRlckJveCYpOwogICAgIHZvaWQgdW5zY2hlZHVs
ZUxhenlSZXBhaW50KFJlbmRlckJveCYpOwogCisgICAgdm9pZCBwcm90ZWN0UmVuZGVyV2lkZ2V0
VW50aWxMYXlvdXRJc0RvbmUoUmVuZGVyV2lkZ2V0KiB3aWRnZXQpIHsgbV9wcm90ZWN0ZWRSZW5k
ZXJXaWRnZXRzLmFwcGVuZCh3aWRnZXQpOyB9CisKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZv
aWQgbWFwTG9jYWxUb0NvbnRhaW5lcihjb25zdCBSZW5kZXJMYXllck1vZGVsT2JqZWN0KiByZXBh
aW50Q29udGFpbmVyLCBUcmFuc2Zvcm1TdGF0ZSYsIE1hcENvb3JkaW5hdGVzRmxhZ3MsIGJvb2wq
IHdhc0ZpeGVkKSBjb25zdCBvdmVycmlkZTsKICAgICB2aXJ0dWFsIGNvbnN0IFJlbmRlck9iamVj
dCogcHVzaE1hcHBpbmdUb0NvbnRhaW5lcihjb25zdCBSZW5kZXJMYXllck1vZGVsT2JqZWN0KiBh
bmNlc3RvclRvU3RvcEF0LCBSZW5kZXJHZW9tZXRyeU1hcCYpIGNvbnN0IG92ZXJyaWRlOwpAQCAt
MzA2LDYgKzMwOSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBhcHBseVN1YnRyZWVTZWxlY3Rpb24o
Y29uc3QgU2VsZWN0aW9uU3VidHJlZVJvb3QmLCBTZWxlY3Rpb25SZXBhaW50TW9kZSwgY29uc3Qg
T2xkU2VsZWN0aW9uRGF0YSYpOwogICAgIExheW91dFJlY3Qgc3VidHJlZVNlbGVjdGlvbkJvdW5k
cyhjb25zdCBTZWxlY3Rpb25TdWJ0cmVlUm9vdCYsIGJvb2wgY2xpcFRvVmlzaWJsZUNvbnRlbnQg
PSB0cnVlKSBjb25zdDsKICAgICB2b2lkIHJlcGFpbnRTdWJ0cmVlU2VsZWN0aW9uKGNvbnN0IFNl
bGVjdGlvblN1YnRyZWVSb290JikgY29uc3Q7CisgICAgdm9pZCByZWxlYXNlUHJvdGVjdGVkUmVu
ZGVyV2lkZ2V0cygpIHsgbV9wcm90ZWN0ZWRSZW5kZXJXaWRnZXRzLmNsZWFyKCk7IH0KIAogcHJp
dmF0ZToKICAgICBGcmFtZVZpZXcmIG1fZnJhbWVWaWV3OwpAQCAtMzYyLDYgKzM2Niw3IEBAIHBy
aXZhdGU6CiAgICAgYm9vbCBtX2hhc0ZsaXBwZWRCbG9ja0Rlc2NlbmRhbnRzOwogCiAgICAgSGFz
aFNldDxSZW5kZXJFbGVtZW50Kj4gbV9yZW5kZXJlcnNXaXRoUGF1c2VkSW1hZ2VBbmltYXRpb247
CisgICAgVmVjdG9yPFJlZlB0cjxSZW5kZXJXaWRnZXQ+PiBtX3Byb3RlY3RlZFJlbmRlcldpZGdl
dHM7CiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKICAgICBTZWxlY3Rpb25SZWN0R2F0
aGVyZXIgbV9zZWxlY3Rpb25SZWN0R2F0aGVyZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJXaWRnZXQuY3BwCmluZGV4IGM0NzY1MTI3Zjc5MzJkOGIyNzJhNmEyZDlmZGJhMWJlY2Iy
NTgyMGYuLjVlZGMxYTMyNDE0ZjE2MTcwNmUxMWI2ODQ1OWYwODU2MjJjZjQ2NmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCkBAIC0xMDYsNiArMTA2LDcgQEAg
dm9pZCBSZW5kZXJXaWRnZXQ6OndpbGxCZURlc3Ryb3llZCgpCiAKIFJlbmRlcldpZGdldDo6flJl
bmRlcldpZGdldCgpCiB7CisgICAgQVNTRVJUKCFtX3JlZkNvdW50KTsKIH0KIAogLy8gV2lkZ2V0
cyBhcmUgYWx3YXlzIHBsYWNlZCBvbiBpbnRlZ2VyIGJvdW5kYXJpZXMsIHNvIHJvdW5kaW5nIHRo
ZSBzaXplIGlzIGFjdHVhbGx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyV2lkZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmgK
aW5kZXggZTg0OGZjNTNmYTM1YTEwZDZhMzQzODQ1MDQxZDIxY2Q3ZDY0ZTg2NC4uMzU3YjFjNDU5
YTdjMGJhNGQ3MTEyZmRlZDkwOTY2ZDYzYmQzNjQzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJXaWRnZXQuaApAQCAtNzQsNiArNzQsOSBAQCBwdWJsaWM6CiAKICAgICBXZWFrUHRy
PFJlbmRlcldpZGdldD4gY3JlYXRlV2Vha1B0cigpIHsgcmV0dXJuIG1fd2Vha1B0ckZhY3Rvcnku
Y3JlYXRlV2Vha1B0cigpOyB9CiAKKyAgICBpbmxpbmUgdm9pZCByZWYoKSB7ICsrbV9yZWZDb3Vu
dDsgfQorICAgIHZvaWQgZGVyZWYoKTsKKwogcHJvdGVjdGVkOgogICAgIFJlbmRlcldpZGdldChI
VE1MRnJhbWVPd25lckVsZW1lbnQmLCBSZWY8UmVuZGVyU3R5bGU+JiYpOwogCkBAIC0xMDIsOCAr
MTA1LDE2IEBAIHByaXZhdGU6CiAgICAgV2Vha1B0ckZhY3Rvcnk8UmVuZGVyV2lkZ2V0PiBtX3dl
YWtQdHJGYWN0b3J5OwogICAgIFJlZlB0cjxXaWRnZXQ+IG1fd2lkZ2V0OwogICAgIEludFJlY3Qg
bV9jbGlwUmVjdDsgLy8gVGhlIHJlY3RhbmdsZSBuZWVkcyB0byByZW1haW4gY29ycmVjdCBhZnRl
ciBzY3JvbGxpbmcsIHNvIGl0IGlzIHN0b3JlZCBpbiBjb250ZW50IHZpZXcgY29vcmRpbmF0ZXMs
IGFuZCBub3QgY2xpcHBlZCB0byB3aW5kb3cuCisgICAgdW5zaWduZWQgbV9yZWZDb3VudCB7IDEg
fTsKIH07CiAKK2lubGluZSB2b2lkIFJlbmRlcldpZGdldDo6ZGVyZWYoKQoreworICAgIEFTU0VS
VChtX3JlZkNvdW50KTsKKyAgICBpZiAoIS0tbV9yZWZDb3VudCkKKyAgICAgICAgZGVsZXRlIHRo
aXM7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19SRU5ERVJfT0JKRUNUKFJlbmRlcldpZGdldCwgaXNXaWRnZXQoKSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252350</attachid>
            <date>2015-05-04 16:35:13 -0700</date>
            <delta_ts>2015-05-04 16:45:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144601-20150504163358.patch</filename>
            <type>text/plain</type>
            <size>8593</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTY5YWEzZTc3YzZkZWJj
NTI3NDZjZGYxZGY2ODFjOWZhOTFhMzJiZS4uZjA5ZTdmMGQzMGI3NjE4NTJlZDZhOTdjYTQ1NmRh
NGRhNGZlODY4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE1LTA1LTA0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuZGVyV2lkZ2V0OjpzZXRX
aWRnZXRHZW9tZXRyeSgpIGNhbiBlbmQgdXAgZGVzdHJveWluZyAqdGhpcyouCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQ2MDEKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGEgc3BlY3VsYXRp
dmUgZml4IHRvIGVuc3VyZSB3ZSBkb24ndCBjcmFzaCBvbiBhbiBpbnZhbGlkICp0aGlzKiByZW5k
ZXJlcgorICAgICAgICB3aGlsZSBmbGF0dGVuaW5nIHRoZSBjdXJyZW50IGlmcmFtZS4KKyAgICAg
ICAgQ2FsbGluZyBSZW5kZXJXaWRnZXQ6OnNldFdpZGdldEdlb21ldHJ5KCkgY2FuIHJlc3VsdCBp
biBkZXN0cm95aW5nIHRoZSBjdXJyZW50IHJlbmRlcmVyLgorICAgICAgICBXaGlsZSBpdCBpcyBu
b3QgYSBpc3N1ZSBpbiBjYXNlIG9mIG5vcm1hbCBsYXlvdXQgZmxvdyBhcyB3aWRnZXQgcG9zaXRp
b25zIGFyZSB1cGRhdGVkIGF0IHBvc3QgbGF5b3V0LAorICAgICAgICBmcmFtZSBmbGF0dGVuaW5n
IGluaXRpYXRlcyB0aGlzIGFjdGlvbiBpbiB0aGUgbWlkZGxlIG9mIGxheW91dC4KKyAgICAgICAg
VGhpcyBwYXRjaCByZS1pbnRyb2R1Y2VzIHJlZmNvdW50IG1vZGVsIGZvciBSZW5kZXJXaWRnZXRz
IHNvIHRoYXQgdGhlIHJlbmRlcmVyIGlzIHByb3RlY3RlZCBkdXJpbmcgbGF5b3V0CisgICAgICAg
IHdoZW4gZnJhbWUgZmxhdHRlbmluZyBpcyBpbiB1c2UuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyRnJhbWVCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZyYW1lQmFzZTo6
bGF5b3V0V2l0aEZsYXR0ZW5pbmcpOiBMZXQncyBiZSBwYXJhbm9pZCBhYm91dCBjaGlsZCB2aWV3
LgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyT2JqZWN0OjpkZXN0cm95KToKKyAgICAgICAgKiByZW5kZXJpbmcvRnJhbWVWaWV3
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6bGF5b3V0KToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyVmlldy5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJXaWRnZXQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyV2lkZ2V0Ojp+UmVuZGVyV2lkZ2V0KToKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyV2lkZ2V0Lmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJXaWRnZXQ6OnJlZik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJXaWRnZXQ6OmRlcmVmKToK
KwogMjAxNS0wNS0wNCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbaU9TXSBDcmFzaCBpbiAtW1dlYkNBTGF5ZXJIb3N0V3JhcHBlciByZXNvbHZlQm91bmRzXQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IDE3NzRkOTdmOWM0OTYzOWViMmI5ZmUxMzMx
OTBmODljNGFmMTRlOGYuLmJmMjU4YjhiNzZkODk2ZDk5OWUwYTllZWI2MzkyYTIzZGNjZGIyMmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTEzNTksNiArMTM1OSw4IEBAIHZvaWQg
RnJhbWVWaWV3OjpsYXlvdXQoYm9vbCBhbGxvd1N1YnRyZWUpCiAgICAgaWYgKG1fbmVlZHNGdWxs
UmVwYWludCkKICAgICAgICAgcm9vdC0+dmlldygpLnJlcGFpbnRSb290Q29udGVudHMoKTsKIAor
ICAgIHJvb3QtPnZpZXcoKS5yZWxlYXNlUHJvdGVjdGVkUmVuZGVyV2lkZ2V0cygpOworCiAgICAg
QVNTRVJUKCFyb290LT5uZWVkc0xheW91dCgpKTsKIAogICAgIGxheWVyLT51cGRhdGVMYXllclBv
c2l0aW9uc0FmdGVyTGF5b3V0KHJlbmRlclZpZXcoKS0+bGF5ZXIoKSwgdXBkYXRlTGF5ZXJQb3Np
dGlvbkZsYWdzKGxheWVyLCBzdWJ0cmVlLCBtX25lZWRzRnVsbFJlcGFpbnQpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFtZUJhc2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZyYW1lQmFzZS5jcHAKaW5kZXggOTI1YTA3Mzg5OTI2
NjFkNWZmZGQxYzVmZDc5NTI2NDJmMWVlOWI4Zi4uOTVlYmU3M2MxYjk5ZjI3MTgzMmM5NDA4OGE1
NWRhYzRlYzlhNDY2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckZyYW1lQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZyYW1l
QmFzZS5jcHAKQEAgLTU0LDEzICs1NCwxMyBAQCBpbmxpbmUgYm9vbCBzaG91bGRFeHBhbmRGcmFt
ZShMYXlvdXRVbml0IHdpZHRoLCBMYXlvdXRVbml0IGhlaWdodCwgYm9vbCBoYXNGaXhlZAogCiB2
b2lkIFJlbmRlckZyYW1lQmFzZTo6bGF5b3V0V2l0aEZsYXR0ZW5pbmcoYm9vbCBoYXNGaXhlZFdp
ZHRoLCBib29sIGhhc0ZpeGVkSGVpZ2h0KQogewotICAgIEZyYW1lVmlldyogY2hpbGRGcmFtZVZp
ZXcgPSBjaGlsZFZpZXcoKTsKLSAgICBSZW5kZXJWaWV3KiBjaGlsZFJvb3QgPSBjaGlsZEZyYW1l
VmlldyA/IGNoaWxkRnJhbWVWaWV3LT5mcmFtZSgpLmNvbnRlbnRSZW5kZXJlcigpIDogMDsKKyAg
ICB2aWV3KCkucHJvdGVjdFJlbmRlcldpZGdldFVudGlsTGF5b3V0SXNEb25lKHRoaXMpOworICAg
IFJlbmRlclZpZXcqIGNoaWxkUm9vdCA9IGNoaWxkVmlldygpID8gY2hpbGRWaWV3KCktPmZyYW1l
KCkuY29udGVudFJlbmRlcmVyKCkgOiAwOwogCiAgICAgaWYgKCFjaGlsZFJvb3QgfHwgIXNob3Vs
ZEV4cGFuZEZyYW1lKHdpZHRoKCksIGhlaWdodCgpLCBoYXNGaXhlZFdpZHRoLCBoYXNGaXhlZEhl
aWdodCkpIHsKICAgICAgICAgdXBkYXRlV2lkZ2V0UG9zaXRpb24oKTsKLSAgICAgICAgaWYgKGNo
aWxkRnJhbWVWaWV3KQotICAgICAgICAgICAgY2hpbGRGcmFtZVZpZXctPmxheW91dCgpOworICAg
ICAgICBpZiAoY2hpbGRWaWV3KCkpCisgICAgICAgICAgICBjaGlsZFZpZXcoKS0+bGF5b3V0KCk7
CiAgICAgICAgIGNsZWFyTmVlZHNMYXlvdXQoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAg
LTgzLDE4ICs4MywyMCBAQCB2b2lkIFJlbmRlckZyYW1lQmFzZTo6bGF5b3V0V2l0aEZsYXR0ZW5p
bmcoYm9vbCBoYXNGaXhlZFdpZHRoLCBib29sIGhhc0ZpeGVkSGVpZwogICAgICAgICBzZXRXaWR0
aChzdGQ6Om1heCh3aWR0aCgpLCBjaGlsZFJvb3QtPm1pblByZWZlcnJlZExvZ2ljYWxXaWR0aCgp
ICsgaEJvcmRlcikpOwogICAgICAgICAvLyB1cGRhdGUgYWdhaW4gdG8gcGFzcyB0aGUgbmV3IHdp
ZHRoIHRvIHRoZSBjaGlsZCBmcmFtZQogICAgICAgICB1cGRhdGVXaWRnZXRQb3NpdGlvbigpOwot
ICAgICAgICBjaGlsZEZyYW1lVmlldy0+bGF5b3V0KCk7CisgICAgICAgIGlmIChjaGlsZFZpZXco
KSkKKyAgICAgICAgICAgIGNoaWxkVmlldygpLT5sYXlvdXQoKTsKICAgICB9CiAKLSAgICAvLyBl
eHBhbmQgdGhlIGZyYW1lIGJ5IHNldHRpbmcgZnJhbWUgaGVpZ2h0ID0gY29udGVudCBoZWlnaHQK
LSAgICBpZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNGaXhlZEhlaWdodCB8fCBjaGlsZFJvb3QtPmlz
RnJhbWVTZXQoKSkKLSAgICAgICAgc2V0SGVpZ2h0KHN0ZDo6bWF4PExheW91dFVuaXQ+KGhlaWdo
dCgpLCBjaGlsZEZyYW1lVmlldy0+Y29udGVudHNIZWlnaHQoKSArIHZCb3JkZXIpKTsKLSAgICBp
ZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNGaXhlZFdpZHRoIHx8IGNoaWxkUm9vdC0+aXNGcmFtZVNl
dCgpKQotICAgICAgICBzZXRXaWR0aChzdGQ6Om1heDxMYXlvdXRVbml0Pih3aWR0aCgpLCBjaGls
ZEZyYW1lVmlldy0+Y29udGVudHNXaWR0aCgpICsgaEJvcmRlcikpOwotCisgICAgaWYgKGNoaWxk
VmlldygpKSB7CisgICAgICAgIC8vIGV4cGFuZCB0aGUgZnJhbWUgYnkgc2V0dGluZyBmcmFtZSBo
ZWlnaHQgPSBjb250ZW50IGhlaWdodAorICAgICAgICBpZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNG
aXhlZEhlaWdodCB8fCBjaGlsZFJvb3QtPmlzRnJhbWVTZXQoKSkKKyAgICAgICAgICAgIHNldEhl
aWdodChzdGQ6Om1heDxMYXlvdXRVbml0PihoZWlnaHQoKSwgY2hpbGRWaWV3KCktPmNvbnRlbnRz
SGVpZ2h0KCkgKyB2Qm9yZGVyKSk7CisgICAgICAgIGlmIChpc1Njcm9sbGFibGUgfHwgIWhhc0Zp
eGVkV2lkdGggfHwgY2hpbGRSb290LT5pc0ZyYW1lU2V0KCkpCisgICAgICAgICAgICBzZXRXaWR0
aChzdGQ6Om1heDxMYXlvdXRVbml0Pih3aWR0aCgpLCBjaGlsZFZpZXcoKS0+Y29udGVudHNXaWR0
aCgpICsgaEJvcmRlcikpOworICAgIH0KICAgICB1cGRhdGVXaWRnZXRQb3NpdGlvbigpOwogCi0g
ICAgQVNTRVJUKCFjaGlsZEZyYW1lVmlldy0+bGF5b3V0UGVuZGluZygpKTsKKyAgICBBU1NFUlQo
IWNoaWxkVmlldygpLT5sYXlvdXRQZW5kaW5nKCkpOwogICAgIEFTU0VSVCghY2hpbGRSb290LT5u
ZWVkc0xheW91dCgpKTsKICAgICBBU1NFUlQoIWNoaWxkUm9vdC0+Zmlyc3RDaGlsZCgpIHx8ICFj
aGlsZFJvb3QtPmZpcnN0Q2hpbGQoKS0+Zmlyc3RDaGlsZFNsb3coKSB8fCAhY2hpbGRSb290LT5m
aXJzdENoaWxkKCktPmZpcnN0Q2hpbGRTbG93KCktPm5lZWRzTGF5b3V0KCkpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IGZiYjVkNzg2YzhkODM3Mjg0
OTVjYmU4ODNiOWRlZTU5ZjRhMWUyMWEuLjcxOTVhYjg4ZjE3ZmNjM2RkYTZjODIyNzVlMTEwMjk5
NmI3Yjg2N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCkBA
IC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAiUmVuZGVyU2Nyb2xsYmFyUGFydC5oIgogI2luY2x1
ZGUgIlJlbmRlclRoZW1lLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgorI2luY2x1ZGUgIlJl
bmRlcldpZGdldC5oIgogI2luY2x1ZGUgIlNWR1JlbmRlclN1cHBvcnQuaCIKICNpbmNsdWRlICJT
ZXR0aW5ncy5oIgogI2luY2x1ZGUgIlN0eWxlUmVzb2x2ZXIuaCIKQEAgLTIwMjQsNiArMjAyNSwx
MCBAQCB2b2lkIFJlbmRlck9iamVjdDo6ZGVzdHJveSgpCiAjZW5kaWYKIAogICAgIHdpbGxCZURl
c3Ryb3llZCgpOworICAgIGlmIChpczxSZW5kZXJXaWRnZXQ+KHRoaXMpKSB7CisgICAgICAgIGRv
d25jYXN0PFJlbmRlcldpZGdldD4odGhpcyktPmRlcmVmKCk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CiAgICAgZGVsZXRlIHRoaXM7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmll
dy5oCmluZGV4IGMxYWE5ZmEyMzljMjYzMDYzNTI2ZTJlNjI4MTcyN2RiNDcyMTIyNzQuLmViMWM0
NmIyM2I1OWYxMzJhNDdkNTNhYzUzNDUyNzAxMmM1YjdiMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclZpZXcuaApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgIkxheW91dFN0YXRl
LmgiCiAjaW5jbHVkZSAiUmVnaW9uLmgiCiAjaW5jbHVkZSAiUmVuZGVyQmxvY2tGbG93LmgiCisj
aW5jbHVkZSAiUmVuZGVyV2lkZ2V0LmgiCiAjaW5jbHVkZSAiU2VsZWN0aW9uU3VidHJlZVJvb3Qu
aCIKICNpbmNsdWRlIDxtZW1vcnk+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KQEAgLTI0NCw2
ICsyNDUsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzY2hlZHVsZUxhenlSZXBhaW50KFJlbmRlckJv
eCYpOwogICAgIHZvaWQgdW5zY2hlZHVsZUxhenlSZXBhaW50KFJlbmRlckJveCYpOwogCisgICAg
dm9pZCBwcm90ZWN0UmVuZGVyV2lkZ2V0VW50aWxMYXlvdXRJc0RvbmUoUmVuZGVyV2lkZ2V0KiB3
aWRnZXQpIHsgbV9wcm90ZWN0ZWRSZW5kZXJXaWRnZXRzLmFwcGVuZCh3aWRnZXQpOyB9CisgICAg
dm9pZCByZWxlYXNlUHJvdGVjdGVkUmVuZGVyV2lkZ2V0cygpIHsgbV9wcm90ZWN0ZWRSZW5kZXJX
aWRnZXRzLmNsZWFyKCk7IH0KKwogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBtYXBMb2Nh
bFRvQ29udGFpbmVyKGNvbnN0IFJlbmRlckxheWVyTW9kZWxPYmplY3QqIHJlcGFpbnRDb250YWlu
ZXIsIFRyYW5zZm9ybVN0YXRlJiwgTWFwQ29vcmRpbmF0ZXNGbGFncywgYm9vbCogd2FzRml4ZWQp
IGNvbnN0IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgY29uc3QgUmVuZGVyT2JqZWN0KiBwdXNoTWFw
cGluZ1RvQ29udGFpbmVyKGNvbnN0IFJlbmRlckxheWVyTW9kZWxPYmplY3QqIGFuY2VzdG9yVG9T
dG9wQXQsIFJlbmRlckdlb21ldHJ5TWFwJikgY29uc3Qgb3ZlcnJpZGU7CkBAIC0zNjIsNiArMzY2
LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faGFzRmxpcHBlZEJsb2NrRGVzY2VuZGFudHM7CiAK
ICAgICBIYXNoU2V0PFJlbmRlckVsZW1lbnQqPiBtX3JlbmRlcmVyc1dpdGhQYXVzZWRJbWFnZUFu
aW1hdGlvbjsKKyAgICBWZWN0b3I8UmVmUHRyPFJlbmRlcldpZGdldD4+IG1fcHJvdGVjdGVkUmVu
ZGVyV2lkZ2V0czsKIAogI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQogICAgIFNlbGVjdGlv
blJlY3RHYXRoZXJlciBtX3NlbGVjdGlvblJlY3RHYXRoZXJlcjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKaW5kZXggYzQ3NjUxMjdmNzkzMmQ4YjI3MmE2YTJkOWZk
YmExYmVjYjI1ODIwZi4uNWVkYzFhMzI0MTRmMTYxNzA2ZTExYjY4NDU5ZjA4NTYyMmNmNDY2ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKQEAgLTEwNiw2ICsx
MDYsNyBAQCB2b2lkIFJlbmRlcldpZGdldDo6d2lsbEJlRGVzdHJveWVkKCkKIAogUmVuZGVyV2lk
Z2V0Ojp+UmVuZGVyV2lkZ2V0KCkKIHsKKyAgICBBU1NFUlQoIW1fcmVmQ291bnQpOwogfQogCiAv
LyBXaWRnZXRzIGFyZSBhbHdheXMgcGxhY2VkIG9uIGludGVnZXIgYm91bmRhcmllcywgc28gcm91
bmRpbmcgdGhlIHNpemUgaXMgYWN0dWFsbHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJXaWRnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJX
aWRnZXQuaAppbmRleCBlODQ4ZmM1M2ZhMzVhMTBkNmEzNDM4NDUwNDFkMjFjZDdkNjRlODY0Li42
ZjU3NzZkZmM2YWFkZWNhYjIzZTE4NjMxNmVhZjhhMTQyMzE0ODA4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlcldpZGdldC5oCkBAIC03NCw2ICs3NCw5IEBAIHB1YmxpYzoKIAogICAg
IFdlYWtQdHI8UmVuZGVyV2lkZ2V0PiBjcmVhdGVXZWFrUHRyKCkgeyByZXR1cm4gbV93ZWFrUHRy
RmFjdG9yeS5jcmVhdGVXZWFrUHRyKCk7IH0KIAorICAgIHZvaWQgcmVmKCkgeyArK21fcmVmQ291
bnQ7IH0KKyAgICB2b2lkIGRlcmVmKCk7CisKIHByb3RlY3RlZDoKICAgICBSZW5kZXJXaWRnZXQo
SFRNTEZyYW1lT3duZXJFbGVtZW50JiwgUmVmPFJlbmRlclN0eWxlPiYmKTsKIApAQCAtMTAyLDgg
KzEwNSwxNiBAQCBwcml2YXRlOgogICAgIFdlYWtQdHJGYWN0b3J5PFJlbmRlcldpZGdldD4gbV93
ZWFrUHRyRmFjdG9yeTsKICAgICBSZWZQdHI8V2lkZ2V0PiBtX3dpZGdldDsKICAgICBJbnRSZWN0
IG1fY2xpcFJlY3Q7IC8vIFRoZSByZWN0YW5nbGUgbmVlZHMgdG8gcmVtYWluIGNvcnJlY3QgYWZ0
ZXIgc2Nyb2xsaW5nLCBzbyBpdCBpcyBzdG9yZWQgaW4gY29udGVudCB2aWV3IGNvb3JkaW5hdGVz
LCBhbmQgbm90IGNsaXBwZWQgdG8gd2luZG93LgorICAgIHVuc2lnbmVkIG1fcmVmQ291bnQgeyAx
IH07CiB9OwogCitpbmxpbmUgdm9pZCBSZW5kZXJXaWRnZXQ6OmRlcmVmKCkKK3sKKyAgICBBU1NF
UlQobV9yZWZDb3VudCk7CisgICAgaWYgKCEtLW1fcmVmQ291bnQpCisgICAgICAgIGRlbGV0ZSB0
aGlzOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKIFNQRUNJQUxJWkVfVFlQRV9UUkFJ
VFNfUkVOREVSX09CSkVDVChSZW5kZXJXaWRnZXQsIGlzV2lkZ2V0KCkpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252351</attachid>
            <date>2015-05-04 16:45:49 -0700</date>
            <delta_ts>2015-05-04 16:48:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144601-20150504164434.patch</filename>
            <type>text/plain</type>
            <size>8594</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTY5YWEzZTc3YzZkZWJj
NTI3NDZjZGYxZGY2ODFjOWZhOTFhMzJiZS4uMjkzYTEyNTU1MGQ1YTFkNjNhMGZiZTk0MTU3YzNi
OTFkZmQ3NmU0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE1LTA1LTA0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuZGVyV2lkZ2V0OjpzZXRX
aWRnZXRHZW9tZXRyeSgpIGNhbiBlbmQgdXAgZGVzdHJveWluZyAqdGhpcyouCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQ2MDEKKworICAgICAgICBS
ZXZpZXdlZCBieSBBbmRyZWFzIEtsaW5nLgorCisgICAgICAgIFRoaXMgaXMgYSBzcGVjdWxhdGl2
ZSBmaXggdG8gZW5zdXJlIHdlIGRvbid0IGNyYXNoIG9uIGFuIGludmFsaWQgKnRoaXMqIHJlbmRl
cmVyCisgICAgICAgIHdoaWxlIGZsYXR0ZW5pbmcgdGhlIGN1cnJlbnQgaWZyYW1lLgorICAgICAg
ICBDYWxsaW5nIFJlbmRlcldpZGdldDo6c2V0V2lkZ2V0R2VvbWV0cnkoKSBjYW4gcmVzdWx0IGlu
IGRlc3Ryb3lpbmcgdGhlIGN1cnJlbnQgcmVuZGVyZXIuCisgICAgICAgIFdoaWxlIGl0IGlzIG5v
dCBhIGlzc3VlIGluIGNhc2Ugb2Ygbm9ybWFsIGxheW91dCBmbG93IGFzIHdpZGdldCBwb3NpdGlv
bnMgYXJlIHVwZGF0ZWQgYXQgcG9zdCBsYXlvdXQsCisgICAgICAgIGZyYW1lIGZsYXR0ZW5pbmcg
aW5pdGlhdGVzIHRoaXMgYWN0aW9uIGluIHRoZSBtaWRkbGUgb2YgbGF5b3V0LgorICAgICAgICBU
aGlzIHBhdGNoIHJlLWludHJvZHVjZXMgcmVmY291bnQgbW9kZWwgZm9yIFJlbmRlcldpZGdldHMg
c28gdGhhdCB0aGUgcmVuZGVyZXIgaXMgcHJvdGVjdGVkIGR1cmluZyBsYXlvdXQKKyAgICAgICAg
d2hlbiBmcmFtZSBmbGF0dGVuaW5nIGlzIGluIHVzZS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJGcmFtZUJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRnJhbWVCYXNlOjps
YXlvdXRXaXRoRmxhdHRlbmluZyk6IExldCdzIGJlIHBhcmFub2lkIGFib3V0IGNoaWxkIHZpZXcu
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJPYmplY3Q6OmRlc3Ryb3kpOgorICAgICAgICAqIHJlbmRlcmluZy9GcmFtZVZpZXcu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpsYXlvdXQpOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJWaWV3Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlcldpZGdldC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJXaWRnZXQ6On5SZW5kZXJXaWRnZXQpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJXaWRnZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
cldpZGdldDo6cmVmKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlcldpZGdldDo6ZGVyZWYpOgor
CiAyMDE1LTA1LTA0ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAg
IFtpT1NdIENyYXNoIGluIC1bV2ViQ0FMYXllckhvc3RXcmFwcGVyIHJlc29sdmVCb3VuZHNdCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggMTc3NGQ5N2Y5YzQ5NjM5ZWIyYjlmZTEzMzE5
MGY4OWM0YWYxNGU4Zi4uYmYyNThiOGI3NmQ4OTZkOTk5ZTBhOWVlYjYzOTJhMjNkY2NkYjIyZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMTM1OSw2ICsxMzU5LDggQEAgdm9pZCBG
cmFtZVZpZXc6OmxheW91dChib29sIGFsbG93U3VidHJlZSkKICAgICBpZiAobV9uZWVkc0Z1bGxS
ZXBhaW50KQogICAgICAgICByb290LT52aWV3KCkucmVwYWludFJvb3RDb250ZW50cygpOwogCisg
ICAgcm9vdC0+dmlldygpLnJlbGVhc2VQcm90ZWN0ZWRSZW5kZXJXaWRnZXRzKCk7CisKICAgICBB
U1NFUlQoIXJvb3QtPm5lZWRzTGF5b3V0KCkpOwogCiAgICAgbGF5ZXItPnVwZGF0ZUxheWVyUG9z
aXRpb25zQWZ0ZXJMYXlvdXQocmVuZGVyVmlldygpLT5sYXllcigpLCB1cGRhdGVMYXllclBvc2l0
aW9uRmxhZ3MobGF5ZXIsIHN1YnRyZWUsIG1fbmVlZHNGdWxsUmVwYWludCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZyYW1lQmFzZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhbWVCYXNlLmNwcAppbmRleCA5MjVhMDczODk5MjY2
MWQ1ZmZkZDFjNWZkNzk1MjY0MmYxZWU5YjhmLi45MjMyY2NkZmE5ZThiYzUzZTk2YmQ4OWJlOTEy
NWY5N2Y4ZDZlZjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RnJhbWVCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhbWVC
YXNlLmNwcApAQCAtNTQsMTMgKzU0LDEzIEBAIGlubGluZSBib29sIHNob3VsZEV4cGFuZEZyYW1l
KExheW91dFVuaXQgd2lkdGgsIExheW91dFVuaXQgaGVpZ2h0LCBib29sIGhhc0ZpeGVkCiAKIHZv
aWQgUmVuZGVyRnJhbWVCYXNlOjpsYXlvdXRXaXRoRmxhdHRlbmluZyhib29sIGhhc0ZpeGVkV2lk
dGgsIGJvb2wgaGFzRml4ZWRIZWlnaHQpCiB7Ci0gICAgRnJhbWVWaWV3KiBjaGlsZEZyYW1lVmll
dyA9IGNoaWxkVmlldygpOwotICAgIFJlbmRlclZpZXcqIGNoaWxkUm9vdCA9IGNoaWxkRnJhbWVW
aWV3ID8gY2hpbGRGcmFtZVZpZXctPmZyYW1lKCkuY29udGVudFJlbmRlcmVyKCkgOiAwOworICAg
IHZpZXcoKS5wcm90ZWN0UmVuZGVyV2lkZ2V0VW50aWxMYXlvdXRJc0RvbmUoKnRoaXMpOworICAg
IFJlbmRlclZpZXcqIGNoaWxkUm9vdCA9IGNoaWxkVmlldygpID8gY2hpbGRWaWV3KCktPmZyYW1l
KCkuY29udGVudFJlbmRlcmVyKCkgOiAwOwogCiAgICAgaWYgKCFjaGlsZFJvb3QgfHwgIXNob3Vs
ZEV4cGFuZEZyYW1lKHdpZHRoKCksIGhlaWdodCgpLCBoYXNGaXhlZFdpZHRoLCBoYXNGaXhlZEhl
aWdodCkpIHsKICAgICAgICAgdXBkYXRlV2lkZ2V0UG9zaXRpb24oKTsKLSAgICAgICAgaWYgKGNo
aWxkRnJhbWVWaWV3KQotICAgICAgICAgICAgY2hpbGRGcmFtZVZpZXctPmxheW91dCgpOworICAg
ICAgICBpZiAoY2hpbGRWaWV3KCkpCisgICAgICAgICAgICBjaGlsZFZpZXcoKS0+bGF5b3V0KCk7
CiAgICAgICAgIGNsZWFyTmVlZHNMYXlvdXQoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAg
LTgzLDE4ICs4MywyMCBAQCB2b2lkIFJlbmRlckZyYW1lQmFzZTo6bGF5b3V0V2l0aEZsYXR0ZW5p
bmcoYm9vbCBoYXNGaXhlZFdpZHRoLCBib29sIGhhc0ZpeGVkSGVpZwogICAgICAgICBzZXRXaWR0
aChzdGQ6Om1heCh3aWR0aCgpLCBjaGlsZFJvb3QtPm1pblByZWZlcnJlZExvZ2ljYWxXaWR0aCgp
ICsgaEJvcmRlcikpOwogICAgICAgICAvLyB1cGRhdGUgYWdhaW4gdG8gcGFzcyB0aGUgbmV3IHdp
ZHRoIHRvIHRoZSBjaGlsZCBmcmFtZQogICAgICAgICB1cGRhdGVXaWRnZXRQb3NpdGlvbigpOwot
ICAgICAgICBjaGlsZEZyYW1lVmlldy0+bGF5b3V0KCk7CisgICAgICAgIGlmIChjaGlsZFZpZXco
KSkKKyAgICAgICAgICAgIGNoaWxkVmlldygpLT5sYXlvdXQoKTsKICAgICB9CiAKLSAgICAvLyBl
eHBhbmQgdGhlIGZyYW1lIGJ5IHNldHRpbmcgZnJhbWUgaGVpZ2h0ID0gY29udGVudCBoZWlnaHQK
LSAgICBpZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNGaXhlZEhlaWdodCB8fCBjaGlsZFJvb3QtPmlz
RnJhbWVTZXQoKSkKLSAgICAgICAgc2V0SGVpZ2h0KHN0ZDo6bWF4PExheW91dFVuaXQ+KGhlaWdo
dCgpLCBjaGlsZEZyYW1lVmlldy0+Y29udGVudHNIZWlnaHQoKSArIHZCb3JkZXIpKTsKLSAgICBp
ZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNGaXhlZFdpZHRoIHx8IGNoaWxkUm9vdC0+aXNGcmFtZVNl
dCgpKQotICAgICAgICBzZXRXaWR0aChzdGQ6Om1heDxMYXlvdXRVbml0Pih3aWR0aCgpLCBjaGls
ZEZyYW1lVmlldy0+Y29udGVudHNXaWR0aCgpICsgaEJvcmRlcikpOwotCisgICAgaWYgKGNoaWxk
VmlldygpKSB7CisgICAgICAgIC8vIGV4cGFuZCB0aGUgZnJhbWUgYnkgc2V0dGluZyBmcmFtZSBo
ZWlnaHQgPSBjb250ZW50IGhlaWdodAorICAgICAgICBpZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNG
aXhlZEhlaWdodCB8fCBjaGlsZFJvb3QtPmlzRnJhbWVTZXQoKSkKKyAgICAgICAgICAgIHNldEhl
aWdodChzdGQ6Om1heDxMYXlvdXRVbml0PihoZWlnaHQoKSwgY2hpbGRWaWV3KCktPmNvbnRlbnRz
SGVpZ2h0KCkgKyB2Qm9yZGVyKSk7CisgICAgICAgIGlmIChpc1Njcm9sbGFibGUgfHwgIWhhc0Zp
eGVkV2lkdGggfHwgY2hpbGRSb290LT5pc0ZyYW1lU2V0KCkpCisgICAgICAgICAgICBzZXRXaWR0
aChzdGQ6Om1heDxMYXlvdXRVbml0Pih3aWR0aCgpLCBjaGlsZFZpZXcoKS0+Y29udGVudHNXaWR0
aCgpICsgaEJvcmRlcikpOworICAgIH0KICAgICB1cGRhdGVXaWRnZXRQb3NpdGlvbigpOwogCi0g
ICAgQVNTRVJUKCFjaGlsZEZyYW1lVmlldy0+bGF5b3V0UGVuZGluZygpKTsKKyAgICBBU1NFUlQo
IWNoaWxkVmlldygpLT5sYXlvdXRQZW5kaW5nKCkpOwogICAgIEFTU0VSVCghY2hpbGRSb290LT5u
ZWVkc0xheW91dCgpKTsKICAgICBBU1NFUlQoIWNoaWxkUm9vdC0+Zmlyc3RDaGlsZCgpIHx8ICFj
aGlsZFJvb3QtPmZpcnN0Q2hpbGQoKS0+Zmlyc3RDaGlsZFNsb3coKSB8fCAhY2hpbGRSb290LT5m
aXJzdENoaWxkKCktPmZpcnN0Q2hpbGRTbG93KCktPm5lZWRzTGF5b3V0KCkpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IGZiYjVkNzg2YzhkODM3Mjg0
OTVjYmU4ODNiOWRlZTU5ZjRhMWUyMWEuLjcxOTVhYjg4ZjE3ZmNjM2RkYTZjODIyNzVlMTEwMjk5
NmI3Yjg2N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCkBA
IC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAiUmVuZGVyU2Nyb2xsYmFyUGFydC5oIgogI2luY2x1
ZGUgIlJlbmRlclRoZW1lLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgorI2luY2x1ZGUgIlJl
bmRlcldpZGdldC5oIgogI2luY2x1ZGUgIlNWR1JlbmRlclN1cHBvcnQuaCIKICNpbmNsdWRlICJT
ZXR0aW5ncy5oIgogI2luY2x1ZGUgIlN0eWxlUmVzb2x2ZXIuaCIKQEAgLTIwMjQsNiArMjAyNSwx
MCBAQCB2b2lkIFJlbmRlck9iamVjdDo6ZGVzdHJveSgpCiAjZW5kaWYKIAogICAgIHdpbGxCZURl
c3Ryb3llZCgpOworICAgIGlmIChpczxSZW5kZXJXaWRnZXQ+KHRoaXMpKSB7CisgICAgICAgIGRv
d25jYXN0PFJlbmRlcldpZGdldD4odGhpcyktPmRlcmVmKCk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CiAgICAgZGVsZXRlIHRoaXM7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmll
dy5oCmluZGV4IGMxYWE5ZmEyMzljMjYzMDYzNTI2ZTJlNjI4MTcyN2RiNDcyMTIyNzQuLjJlYjM0
ZmRjYWM5ZDBmODJkMzRhN2VkZWYzMzk0YzU5YTQ2ZjE3YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclZpZXcuaApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgIkxheW91dFN0YXRl
LmgiCiAjaW5jbHVkZSAiUmVnaW9uLmgiCiAjaW5jbHVkZSAiUmVuZGVyQmxvY2tGbG93LmgiCisj
aW5jbHVkZSAiUmVuZGVyV2lkZ2V0LmgiCiAjaW5jbHVkZSAiU2VsZWN0aW9uU3VidHJlZVJvb3Qu
aCIKICNpbmNsdWRlIDxtZW1vcnk+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KQEAgLTI0NCw2
ICsyNDUsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzY2hlZHVsZUxhenlSZXBhaW50KFJlbmRlckJv
eCYpOwogICAgIHZvaWQgdW5zY2hlZHVsZUxhenlSZXBhaW50KFJlbmRlckJveCYpOwogCisgICAg
dm9pZCBwcm90ZWN0UmVuZGVyV2lkZ2V0VW50aWxMYXlvdXRJc0RvbmUoUmVuZGVyV2lkZ2V0JiB3
aWRnZXQpIHsgbV9wcm90ZWN0ZWRSZW5kZXJXaWRnZXRzLmFwcGVuZCgmd2lkZ2V0KTsgfQorICAg
IHZvaWQgcmVsZWFzZVByb3RlY3RlZFJlbmRlcldpZGdldHMoKSB7IG1fcHJvdGVjdGVkUmVuZGVy
V2lkZ2V0cy5jbGVhcigpOyB9CisKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQgbWFwTG9j
YWxUb0NvbnRhaW5lcihjb25zdCBSZW5kZXJMYXllck1vZGVsT2JqZWN0KiByZXBhaW50Q29udGFp
bmVyLCBUcmFuc2Zvcm1TdGF0ZSYsIE1hcENvb3JkaW5hdGVzRmxhZ3MsIGJvb2wqIHdhc0ZpeGVk
KSBjb25zdCBvdmVycmlkZTsKICAgICB2aXJ0dWFsIGNvbnN0IFJlbmRlck9iamVjdCogcHVzaE1h
cHBpbmdUb0NvbnRhaW5lcihjb25zdCBSZW5kZXJMYXllck1vZGVsT2JqZWN0KiBhbmNlc3RvclRv
U3RvcEF0LCBSZW5kZXJHZW9tZXRyeU1hcCYpIGNvbnN0IG92ZXJyaWRlOwpAQCAtMzYyLDYgKzM2
Niw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2hhc0ZsaXBwZWRCbG9ja0Rlc2NlbmRhbnRzOwog
CiAgICAgSGFzaFNldDxSZW5kZXJFbGVtZW50Kj4gbV9yZW5kZXJlcnNXaXRoUGF1c2VkSW1hZ2VB
bmltYXRpb247CisgICAgVmVjdG9yPFJlZlB0cjxSZW5kZXJXaWRnZXQ+PiBtX3Byb3RlY3RlZFJl
bmRlcldpZGdldHM7CiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKICAgICBTZWxlY3Rp
b25SZWN0R2F0aGVyZXIgbV9zZWxlY3Rpb25SZWN0R2F0aGVyZXI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCmluZGV4IGM0NzY1MTI3Zjc5MzJkOGIyNzJhNmEyZDlm
ZGJhMWJlY2IyNTgyMGYuLjVlZGMxYTMyNDE0ZjE2MTcwNmUxMWI2ODQ1OWYwODU2MjJjZjQ2NmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCkBAIC0xMDYsNiAr
MTA2LDcgQEAgdm9pZCBSZW5kZXJXaWRnZXQ6OndpbGxCZURlc3Ryb3llZCgpCiAKIFJlbmRlcldp
ZGdldDo6flJlbmRlcldpZGdldCgpCiB7CisgICAgQVNTRVJUKCFtX3JlZkNvdW50KTsKIH0KIAog
Ly8gV2lkZ2V0cyBhcmUgYWx3YXlzIHBsYWNlZCBvbiBpbnRlZ2VyIGJvdW5kYXJpZXMsIHNvIHJv
dW5kaW5nIHRoZSBzaXplIGlzIGFjdHVhbGx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
V2lkZ2V0LmgKaW5kZXggZTg0OGZjNTNmYTM1YTEwZDZhMzQzODQ1MDQxZDIxY2Q3ZDY0ZTg2NC4u
NmY1Nzc2ZGZjNmFhZGVjYWIyM2UxODYzMTZlYWY4YTE0MjMxNDgwOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuaApAQCAtNzQsNiArNzQsOSBAQCBwdWJsaWM6CiAKICAg
ICBXZWFrUHRyPFJlbmRlcldpZGdldD4gY3JlYXRlV2Vha1B0cigpIHsgcmV0dXJuIG1fd2Vha1B0
ckZhY3RvcnkuY3JlYXRlV2Vha1B0cigpOyB9CiAKKyAgICB2b2lkIHJlZigpIHsgKyttX3JlZkNv
dW50OyB9CisgICAgdm9pZCBkZXJlZigpOworCiBwcm90ZWN0ZWQ6CiAgICAgUmVuZGVyV2lkZ2V0
KEhUTUxGcmFtZU93bmVyRWxlbWVudCYsIFJlZjxSZW5kZXJTdHlsZT4mJik7CiAKQEAgLTEwMiw4
ICsxMDUsMTYgQEAgcHJpdmF0ZToKICAgICBXZWFrUHRyRmFjdG9yeTxSZW5kZXJXaWRnZXQ+IG1f
d2Vha1B0ckZhY3Rvcnk7CiAgICAgUmVmUHRyPFdpZGdldD4gbV93aWRnZXQ7CiAgICAgSW50UmVj
dCBtX2NsaXBSZWN0OyAvLyBUaGUgcmVjdGFuZ2xlIG5lZWRzIHRvIHJlbWFpbiBjb3JyZWN0IGFm
dGVyIHNjcm9sbGluZywgc28gaXQgaXMgc3RvcmVkIGluIGNvbnRlbnQgdmlldyBjb29yZGluYXRl
cywgYW5kIG5vdCBjbGlwcGVkIHRvIHdpbmRvdy4KKyAgICB1bnNpZ25lZCBtX3JlZkNvdW50IHsg
MSB9OwogfTsKIAoraW5saW5lIHZvaWQgUmVuZGVyV2lkZ2V0OjpkZXJlZigpCit7CisgICAgQVNT
RVJUKG1fcmVmQ291bnQpOworICAgIGlmICghLS1tX3JlZkNvdW50KQorICAgICAgICBkZWxldGUg
dGhpczsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiBTUEVDSUFMSVpFX1RZUEVfVFJB
SVRTX1JFTkRFUl9PQkpFQ1QoUmVuZGVyV2lkZ2V0LCBpc1dpZGdldCgpKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252353</attachid>
            <date>2015-05-04 16:48:51 -0700</date>
            <delta_ts>2015-05-04 20:23:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144601-20150504164736.patch</filename>
            <type>text/plain</type>
            <size>8595</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTY5YWEzZTc3YzZkZWJj
NTI3NDZjZGYxZGY2ODFjOWZhOTFhMzJiZS4uMjkzYTEyNTU1MGQ1YTFkNjNhMGZiZTk0MTU3YzNi
OTFkZmQ3NmU0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE1LTA1LTA0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuZGVyV2lkZ2V0OjpzZXRX
aWRnZXRHZW9tZXRyeSgpIGNhbiBlbmQgdXAgZGVzdHJveWluZyAqdGhpcyouCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQ2MDEKKworICAgICAgICBS
ZXZpZXdlZCBieSBBbmRyZWFzIEtsaW5nLgorCisgICAgICAgIFRoaXMgaXMgYSBzcGVjdWxhdGl2
ZSBmaXggdG8gZW5zdXJlIHdlIGRvbid0IGNyYXNoIG9uIGFuIGludmFsaWQgKnRoaXMqIHJlbmRl
cmVyCisgICAgICAgIHdoaWxlIGZsYXR0ZW5pbmcgdGhlIGN1cnJlbnQgaWZyYW1lLgorICAgICAg
ICBDYWxsaW5nIFJlbmRlcldpZGdldDo6c2V0V2lkZ2V0R2VvbWV0cnkoKSBjYW4gcmVzdWx0IGlu
IGRlc3Ryb3lpbmcgdGhlIGN1cnJlbnQgcmVuZGVyZXIuCisgICAgICAgIFdoaWxlIGl0IGlzIG5v
dCBhIGlzc3VlIGluIGNhc2Ugb2Ygbm9ybWFsIGxheW91dCBmbG93IGFzIHdpZGdldCBwb3NpdGlv
bnMgYXJlIHVwZGF0ZWQgYXQgcG9zdCBsYXlvdXQsCisgICAgICAgIGZyYW1lIGZsYXR0ZW5pbmcg
aW5pdGlhdGVzIHRoaXMgYWN0aW9uIGluIHRoZSBtaWRkbGUgb2YgbGF5b3V0LgorICAgICAgICBU
aGlzIHBhdGNoIHJlLWludHJvZHVjZXMgcmVmY291bnQgbW9kZWwgZm9yIFJlbmRlcldpZGdldHMg
c28gdGhhdCB0aGUgcmVuZGVyZXIgaXMgcHJvdGVjdGVkIGR1cmluZyBsYXlvdXQKKyAgICAgICAg
d2hlbiBmcmFtZSBmbGF0dGVuaW5nIGlzIGluIHVzZS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJGcmFtZUJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRnJhbWVCYXNlOjps
YXlvdXRXaXRoRmxhdHRlbmluZyk6IExldCdzIGJlIHBhcmFub2lkIGFib3V0IGNoaWxkIHZpZXcu
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJPYmplY3Q6OmRlc3Ryb3kpOgorICAgICAgICAqIHJlbmRlcmluZy9GcmFtZVZpZXcu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpsYXlvdXQpOgorICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJWaWV3Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlcldpZGdldC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJXaWRnZXQ6On5SZW5kZXJXaWRnZXQpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJXaWRnZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
cldpZGdldDo6cmVmKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlcldpZGdldDo6ZGVyZWYpOgor
CiAyMDE1LTA1LTA0ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAg
IFtpT1NdIENyYXNoIGluIC1bV2ViQ0FMYXllckhvc3RXcmFwcGVyIHJlc29sdmVCb3VuZHNdCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggMTc3NGQ5N2Y5YzQ5NjM5ZWIyYjlmZTEzMzE5
MGY4OWM0YWYxNGU4Zi4uYmYyNThiOGI3NmQ4OTZkOTk5ZTBhOWVlYjYzOTJhMjNkY2NkYjIyZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMTM1OSw2ICsxMzU5LDggQEAgdm9pZCBG
cmFtZVZpZXc6OmxheW91dChib29sIGFsbG93U3VidHJlZSkKICAgICBpZiAobV9uZWVkc0Z1bGxS
ZXBhaW50KQogICAgICAgICByb290LT52aWV3KCkucmVwYWludFJvb3RDb250ZW50cygpOwogCisg
ICAgcm9vdC0+dmlldygpLnJlbGVhc2VQcm90ZWN0ZWRSZW5kZXJXaWRnZXRzKCk7CisKICAgICBB
U1NFUlQoIXJvb3QtPm5lZWRzTGF5b3V0KCkpOwogCiAgICAgbGF5ZXItPnVwZGF0ZUxheWVyUG9z
aXRpb25zQWZ0ZXJMYXlvdXQocmVuZGVyVmlldygpLT5sYXllcigpLCB1cGRhdGVMYXllclBvc2l0
aW9uRmxhZ3MobGF5ZXIsIHN1YnRyZWUsIG1fbmVlZHNGdWxsUmVwYWludCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZyYW1lQmFzZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhbWVCYXNlLmNwcAppbmRleCA5MjVhMDczODk5MjY2
MWQ1ZmZkZDFjNWZkNzk1MjY0MmYxZWU5YjhmLi45MjMyY2NkZmE5ZThiYzUzZTk2YmQ4OWJlOTEy
NWY5N2Y4ZDZlZjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RnJhbWVCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhbWVC
YXNlLmNwcApAQCAtNTQsMTMgKzU0LDEzIEBAIGlubGluZSBib29sIHNob3VsZEV4cGFuZEZyYW1l
KExheW91dFVuaXQgd2lkdGgsIExheW91dFVuaXQgaGVpZ2h0LCBib29sIGhhc0ZpeGVkCiAKIHZv
aWQgUmVuZGVyRnJhbWVCYXNlOjpsYXlvdXRXaXRoRmxhdHRlbmluZyhib29sIGhhc0ZpeGVkV2lk
dGgsIGJvb2wgaGFzRml4ZWRIZWlnaHQpCiB7Ci0gICAgRnJhbWVWaWV3KiBjaGlsZEZyYW1lVmll
dyA9IGNoaWxkVmlldygpOwotICAgIFJlbmRlclZpZXcqIGNoaWxkUm9vdCA9IGNoaWxkRnJhbWVW
aWV3ID8gY2hpbGRGcmFtZVZpZXctPmZyYW1lKCkuY29udGVudFJlbmRlcmVyKCkgOiAwOworICAg
IHZpZXcoKS5wcm90ZWN0UmVuZGVyV2lkZ2V0VW50aWxMYXlvdXRJc0RvbmUoKnRoaXMpOworICAg
IFJlbmRlclZpZXcqIGNoaWxkUm9vdCA9IGNoaWxkVmlldygpID8gY2hpbGRWaWV3KCktPmZyYW1l
KCkuY29udGVudFJlbmRlcmVyKCkgOiAwOwogCiAgICAgaWYgKCFjaGlsZFJvb3QgfHwgIXNob3Vs
ZEV4cGFuZEZyYW1lKHdpZHRoKCksIGhlaWdodCgpLCBoYXNGaXhlZFdpZHRoLCBoYXNGaXhlZEhl
aWdodCkpIHsKICAgICAgICAgdXBkYXRlV2lkZ2V0UG9zaXRpb24oKTsKLSAgICAgICAgaWYgKGNo
aWxkRnJhbWVWaWV3KQotICAgICAgICAgICAgY2hpbGRGcmFtZVZpZXctPmxheW91dCgpOworICAg
ICAgICBpZiAoY2hpbGRWaWV3KCkpCisgICAgICAgICAgICBjaGlsZFZpZXcoKS0+bGF5b3V0KCk7
CiAgICAgICAgIGNsZWFyTmVlZHNMYXlvdXQoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAg
LTgzLDE4ICs4MywyMCBAQCB2b2lkIFJlbmRlckZyYW1lQmFzZTo6bGF5b3V0V2l0aEZsYXR0ZW5p
bmcoYm9vbCBoYXNGaXhlZFdpZHRoLCBib29sIGhhc0ZpeGVkSGVpZwogICAgICAgICBzZXRXaWR0
aChzdGQ6Om1heCh3aWR0aCgpLCBjaGlsZFJvb3QtPm1pblByZWZlcnJlZExvZ2ljYWxXaWR0aCgp
ICsgaEJvcmRlcikpOwogICAgICAgICAvLyB1cGRhdGUgYWdhaW4gdG8gcGFzcyB0aGUgbmV3IHdp
ZHRoIHRvIHRoZSBjaGlsZCBmcmFtZQogICAgICAgICB1cGRhdGVXaWRnZXRQb3NpdGlvbigpOwot
ICAgICAgICBjaGlsZEZyYW1lVmlldy0+bGF5b3V0KCk7CisgICAgICAgIGlmIChjaGlsZFZpZXco
KSkKKyAgICAgICAgICAgIGNoaWxkVmlldygpLT5sYXlvdXQoKTsKICAgICB9CiAKLSAgICAvLyBl
eHBhbmQgdGhlIGZyYW1lIGJ5IHNldHRpbmcgZnJhbWUgaGVpZ2h0ID0gY29udGVudCBoZWlnaHQK
LSAgICBpZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNGaXhlZEhlaWdodCB8fCBjaGlsZFJvb3QtPmlz
RnJhbWVTZXQoKSkKLSAgICAgICAgc2V0SGVpZ2h0KHN0ZDo6bWF4PExheW91dFVuaXQ+KGhlaWdo
dCgpLCBjaGlsZEZyYW1lVmlldy0+Y29udGVudHNIZWlnaHQoKSArIHZCb3JkZXIpKTsKLSAgICBp
ZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNGaXhlZFdpZHRoIHx8IGNoaWxkUm9vdC0+aXNGcmFtZVNl
dCgpKQotICAgICAgICBzZXRXaWR0aChzdGQ6Om1heDxMYXlvdXRVbml0Pih3aWR0aCgpLCBjaGls
ZEZyYW1lVmlldy0+Y29udGVudHNXaWR0aCgpICsgaEJvcmRlcikpOwotCisgICAgaWYgKGNoaWxk
VmlldygpKSB7CisgICAgICAgIC8vIGV4cGFuZCB0aGUgZnJhbWUgYnkgc2V0dGluZyBmcmFtZSBo
ZWlnaHQgPSBjb250ZW50IGhlaWdodAorICAgICAgICBpZiAoaXNTY3JvbGxhYmxlIHx8ICFoYXNG
aXhlZEhlaWdodCB8fCBjaGlsZFJvb3QtPmlzRnJhbWVTZXQoKSkKKyAgICAgICAgICAgIHNldEhl
aWdodChzdGQ6Om1heDxMYXlvdXRVbml0PihoZWlnaHQoKSwgY2hpbGRWaWV3KCktPmNvbnRlbnRz
SGVpZ2h0KCkgKyB2Qm9yZGVyKSk7CisgICAgICAgIGlmIChpc1Njcm9sbGFibGUgfHwgIWhhc0Zp
eGVkV2lkdGggfHwgY2hpbGRSb290LT5pc0ZyYW1lU2V0KCkpCisgICAgICAgICAgICBzZXRXaWR0
aChzdGQ6Om1heDxMYXlvdXRVbml0Pih3aWR0aCgpLCBjaGlsZFZpZXcoKS0+Y29udGVudHNXaWR0
aCgpICsgaEJvcmRlcikpOworICAgIH0KICAgICB1cGRhdGVXaWRnZXRQb3NpdGlvbigpOwogCi0g
ICAgQVNTRVJUKCFjaGlsZEZyYW1lVmlldy0+bGF5b3V0UGVuZGluZygpKTsKKyAgICBBU1NFUlQo
IWNoaWxkVmlldygpLT5sYXlvdXRQZW5kaW5nKCkpOwogICAgIEFTU0VSVCghY2hpbGRSb290LT5u
ZWVkc0xheW91dCgpKTsKICAgICBBU1NFUlQoIWNoaWxkUm9vdC0+Zmlyc3RDaGlsZCgpIHx8ICFj
aGlsZFJvb3QtPmZpcnN0Q2hpbGQoKS0+Zmlyc3RDaGlsZFNsb3coKSB8fCAhY2hpbGRSb290LT5m
aXJzdENoaWxkKCktPmZpcnN0Q2hpbGRTbG93KCktPm5lZWRzTGF5b3V0KCkpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IGZiYjVkNzg2YzhkODM3Mjg0
OTVjYmU4ODNiOWRlZTU5ZjRhMWUyMWEuLmY1NzZlYzU4MmM0MzY5ZDhiMWMwY2IyZmYxNDEyZWMw
OTU0ZTUxYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCkBA
IC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAiUmVuZGVyU2Nyb2xsYmFyUGFydC5oIgogI2luY2x1
ZGUgIlJlbmRlclRoZW1lLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgorI2luY2x1ZGUgIlJl
bmRlcldpZGdldC5oIgogI2luY2x1ZGUgIlNWR1JlbmRlclN1cHBvcnQuaCIKICNpbmNsdWRlICJT
ZXR0aW5ncy5oIgogI2luY2x1ZGUgIlN0eWxlUmVzb2x2ZXIuaCIKQEAgLTIwMjQsNiArMjAyNSwx
MCBAQCB2b2lkIFJlbmRlck9iamVjdDo6ZGVzdHJveSgpCiAjZW5kaWYKIAogICAgIHdpbGxCZURl
c3Ryb3llZCgpOworICAgIGlmIChpczxSZW5kZXJXaWRnZXQ+KCp0aGlzKSkgeworICAgICAgICBk
b3duY2FzdDxSZW5kZXJXaWRnZXQ+KCp0aGlzKS5kZXJlZigpOworICAgICAgICByZXR1cm47Cisg
ICAgfQogICAgIGRlbGV0ZSB0aGlzOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZp
ZXcuaAppbmRleCBjMWFhOWZhMjM5YzI2MzA2MzUyNmUyZTYyODE3MjdkYjQ3MjEyMjc0Li4yZWIz
NGZkY2FjOWQwZjgyZDM0YTdlZGVmMzM5NGM1OWE0NmYxN2IwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJWaWV3LmgKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJMYXlvdXRTdGF0
ZS5oIgogI2luY2x1ZGUgIlJlZ2lvbi5oIgogI2luY2x1ZGUgIlJlbmRlckJsb2NrRmxvdy5oIgor
I2luY2x1ZGUgIlJlbmRlcldpZGdldC5oIgogI2luY2x1ZGUgIlNlbGVjdGlvblN1YnRyZWVSb290
LmgiCiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CkBAIC0yNDQs
NiArMjQ1LDkgQEAgcHVibGljOgogICAgIHZvaWQgc2NoZWR1bGVMYXp5UmVwYWludChSZW5kZXJC
b3gmKTsKICAgICB2b2lkIHVuc2NoZWR1bGVMYXp5UmVwYWludChSZW5kZXJCb3gmKTsKIAorICAg
IHZvaWQgcHJvdGVjdFJlbmRlcldpZGdldFVudGlsTGF5b3V0SXNEb25lKFJlbmRlcldpZGdldCYg
d2lkZ2V0KSB7IG1fcHJvdGVjdGVkUmVuZGVyV2lkZ2V0cy5hcHBlbmQoJndpZGdldCk7IH0KKyAg
ICB2b2lkIHJlbGVhc2VQcm90ZWN0ZWRSZW5kZXJXaWRnZXRzKCkgeyBtX3Byb3RlY3RlZFJlbmRl
cldpZGdldHMuY2xlYXIoKTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIG1hcExv
Y2FsVG9Db250YWluZXIoY29uc3QgUmVuZGVyTGF5ZXJNb2RlbE9iamVjdCogcmVwYWludENvbnRh
aW5lciwgVHJhbnNmb3JtU3RhdGUmLCBNYXBDb29yZGluYXRlc0ZsYWdzLCBib29sKiB3YXNGaXhl
ZCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBjb25zdCBSZW5kZXJPYmplY3QqIHB1c2hN
YXBwaW5nVG9Db250YWluZXIoY29uc3QgUmVuZGVyTGF5ZXJNb2RlbE9iamVjdCogYW5jZXN0b3JU
b1N0b3BBdCwgUmVuZGVyR2VvbWV0cnlNYXAmKSBjb25zdCBvdmVycmlkZTsKQEAgLTM2Miw2ICsz
NjYsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9oYXNGbGlwcGVkQmxvY2tEZXNjZW5kYW50czsK
IAogICAgIEhhc2hTZXQ8UmVuZGVyRWxlbWVudCo+IG1fcmVuZGVyZXJzV2l0aFBhdXNlZEltYWdl
QW5pbWF0aW9uOworICAgIFZlY3RvcjxSZWZQdHI8UmVuZGVyV2lkZ2V0Pj4gbV9wcm90ZWN0ZWRS
ZW5kZXJXaWRnZXRzOwogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMpCiAgICAgU2VsZWN0
aW9uUmVjdEdhdGhlcmVyIG1fc2VsZWN0aW9uUmVjdEdhdGhlcmVyOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcAppbmRleCBjNDc2NTEyN2Y3OTMyZDhiMjcyYTZhMmQ5
ZmRiYTFiZWNiMjU4MjBmLi41ZWRjMWEzMjQxNGYxNjE3MDZlMTFiNjg0NTlmMDg1NjIyY2Y0NjZk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcApAQCAtMTA2LDYg
KzEwNiw3IEBAIHZvaWQgUmVuZGVyV2lkZ2V0Ojp3aWxsQmVEZXN0cm95ZWQoKQogCiBSZW5kZXJX
aWRnZXQ6On5SZW5kZXJXaWRnZXQoKQogeworICAgIEFTU0VSVCghbV9yZWZDb3VudCk7CiB9CiAK
IC8vIFdpZGdldHMgYXJlIGFsd2F5cyBwbGFjZWQgb24gaW50ZWdlciBib3VuZGFyaWVzLCBzbyBy
b3VuZGluZyB0aGUgc2l6ZSBpcyBhY3R1YWxseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlcldpZGdldC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
cldpZGdldC5oCmluZGV4IGU4NDhmYzUzZmEzNWExMGQ2YTM0Mzg0NTA0MWQyMWNkN2Q2NGU4NjQu
LjZmNTc3NmRmYzZhYWRlY2FiMjNlMTg2MzE2ZWFmOGExNDIzMTQ4MDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmgKQEAgLTc0LDYgKzc0LDkgQEAgcHVibGljOgogCiAg
ICAgV2Vha1B0cjxSZW5kZXJXaWRnZXQ+IGNyZWF0ZVdlYWtQdHIoKSB7IHJldHVybiBtX3dlYWtQ
dHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsgfQogCisgICAgdm9pZCByZWYoKSB7ICsrbV9yZWZD
b3VudDsgfQorICAgIHZvaWQgZGVyZWYoKTsKKwogcHJvdGVjdGVkOgogICAgIFJlbmRlcldpZGdl
dChIVE1MRnJhbWVPd25lckVsZW1lbnQmLCBSZWY8UmVuZGVyU3R5bGU+JiYpOwogCkBAIC0xMDIs
OCArMTA1LDE2IEBAIHByaXZhdGU6CiAgICAgV2Vha1B0ckZhY3Rvcnk8UmVuZGVyV2lkZ2V0PiBt
X3dlYWtQdHJGYWN0b3J5OwogICAgIFJlZlB0cjxXaWRnZXQ+IG1fd2lkZ2V0OwogICAgIEludFJl
Y3QgbV9jbGlwUmVjdDsgLy8gVGhlIHJlY3RhbmdsZSBuZWVkcyB0byByZW1haW4gY29ycmVjdCBh
ZnRlciBzY3JvbGxpbmcsIHNvIGl0IGlzIHN0b3JlZCBpbiBjb250ZW50IHZpZXcgY29vcmRpbmF0
ZXMsIGFuZCBub3QgY2xpcHBlZCB0byB3aW5kb3cuCisgICAgdW5zaWduZWQgbV9yZWZDb3VudCB7
IDEgfTsKIH07CiAKK2lubGluZSB2b2lkIFJlbmRlcldpZGdldDo6ZGVyZWYoKQoreworICAgIEFT
U0VSVChtX3JlZkNvdW50KTsKKyAgICBpZiAoIS0tbV9yZWZDb3VudCkKKyAgICAgICAgZGVsZXRl
IHRoaXM7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTElaRV9UWVBFX1RS
QUlUU19SRU5ERVJfT0JKRUNUKFJlbmRlcldpZGdldCwgaXNXaWRnZXQoKSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>