<?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>135233</bug_id>
          
          <creation_ts>2014-07-24 02:39:29 -0700</creation_ts>
          <short_desc>Member name collision in RenderView and SelectionSubtreeRoot</short_desc>
          <delta_ts>2014-07-30 09:23:25 -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>CSS</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>AdobeTracked</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Radu Stavila">stavila</reporter>
          <assigned_to name="Radu Stavila">stavila</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>hyatt</cc>
    
    <cc>jfernandez</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mihnea</cc>
    
    <cc>rego</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1024473</commentid>
    <comment_count>0</comment_count>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-07-24 02:39:29 -0700</bug_when>
    <thetext>SelectionSubtreeRoot members:

    RenderObject* m_selectionStart;
    int m_selectionStartPos;
    RenderObject* m_selectionEnd;
    int m_selectionEndPos;


RenderView members:

    RenderObject* m_selectionStart;
    RenderObject* m_selectionEnd;
    int m_selectionStartPos;
    int m_selectionEndPos;


Because RenderView inherits SelectionSubtreeRoot, this presents a problem. Furthermore, the getter/setter methods also have identical names (selectionStart(), setSelectionStart(...) etc). 

Example: in RenderView.cpp, setting the start/end selection members to some values. Then calling selectionStartEndPositions(...) which retrieves those values. Because this method is inside SelectionSubtreeRoot, it will return the version of the selection members from SelectionSubtreeRoot, not the ones you would normally expect it to. This has great potential for creating confusion and hard-to-track issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024479</commentid>
    <comment_count>1</comment_count>
      <attachid>235420</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-07-24 03:04:21 -0700</bug_when>
    <thetext>Created attachment 235420
Patch for renaming selection members - NOT FOR LANDING

The attached patch renames the members inside RenderView but causes fast/dom/HTMLObjectElement/beforeload-set-text-crash.xhtml to crash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025132</commentid>
    <comment_count>2</comment_count>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-07-28 06:07:03 -0700</bug_when>
    <thetext>Update: the crash was not caused by the rename. After the initial patch lands (https://bugs.webkit.org/show_bug.cgi?id=134303) I will try to re-land this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025698</commentid>
    <comment_count>3</comment_count>
      <attachid>235740</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-07-30 04:11:46 -0700</bug_when>
    <thetext>Created attachment 235740
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025701</commentid>
    <comment_count>4</comment_count>
      <attachid>235740</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2014-07-30 04:43:34 -0700</bug_when>
    <thetext>Comment on attachment 235740
Patch

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

&gt; Source/WebCore/rendering/RenderView.h:92
&gt; +    RenderObject* selectionUnsplitStart() const { return m_unsplitSelectionStart; }

Any reason why the function is named selectionUnsplitStart and the member is m_unsplitSelectionStart?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025705</commentid>
    <comment_count>5</comment_count>
      <attachid>235743</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-07-30 06:38:27 -0700</bug_when>
    <thetext>Created attachment 235743
Patch integrating reviewer feedback</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025706</commentid>
    <comment_count>6</comment_count>
      <attachid>235743</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2014-07-30 07:02:23 -0700</bug_when>
    <thetext>Comment on attachment 235743
Patch integrating reviewer feedback

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025714</commentid>
    <comment_count>7</comment_count>
      <attachid>235743</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-07-30 09:23:21 -0700</bug_when>
    <thetext>Comment on attachment 235743
Patch integrating reviewer feedback

Clearing flags on attachment: 235743

Committed r171797: &lt;http://trac.webkit.org/changeset/171797&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025715</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-07-30 09:23:25 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235420</attachid>
            <date>2014-07-24 03:04:21 -0700</date>
            <delta_ts>2014-07-30 04:11:46 -0700</delta_ts>
            <desc>Patch for renaming selection members - NOT FOR LANDING</desc>
            <filename>rename_patch.diff</filename>
            <type>text/plain</type>
            <size>4988</size>
            <attacher name="Radu Stavila">stavila</attacher>
            
              <data encoding="base64">RnJvbSBiODZjYTg2MDU5NWIyMDEzYjk0ZTZmYzAyMWIwMTQ3YTJiNDk3ZTA5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBSYWR1IFN0YXZpbGEgPHN0YXZpbGFAYWRvYmUuY29tPgpEYXRl
OiBUaHUsIDI0IEp1bCAyMDE0IDEzOjAxOjEwICswMzAwClN1YmplY3Q6IFtQQVRDSF0gQWRkIHJl
bmFtZQoKLS0tCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIHwgIDQg
KystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwICB8IDI5ICsrKysr
KysrKysrKysrKy0tLS0tLS0tLS0tLS0tCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Vmlldy5oICAgIHwgMTIgKysrKysrLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlv
bnMoKyksIDIyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9jay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxv
Y2suY3BwCmluZGV4IGJkYWFjZDAuLjAwMGJkMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJsb2NrLmNwcApAQCAtMTgyOCw4ICsxODI4LDggQEAgYm9vbCBSZW5kZXJCbG9jazo6
aXNTZWxlY3Rpb25Sb290KCkgY29uc3QKICAgICAgICAgfHwgaXNSZW5kZXJGbG93VGhyZWFkKCkg
fHwgc3R5bGUoKS5jb2x1bW5TcGFuKCkgPT0gQ29sdW1uU3BhbkFsbCkKICAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgCi0gICAgaWYgKHZpZXcoKS5zZWxlY3Rpb25TdGFydCgpKSB7Ci0gICAgICAg
IE5vZGUqIHN0YXJ0RWxlbWVudCA9IHZpZXcoKS5zZWxlY3Rpb25TdGFydCgpLT5ub2RlKCk7Cisg
ICAgaWYgKHZpZXcoKS5zZWxlY3Rpb25VbnNwbGl0U3RhcnQoKSkgeworICAgICAgICBOb2RlKiBz
dGFydEVsZW1lbnQgPSB2aWV3KCkuc2VsZWN0aW9uVW5zcGxpdFN0YXJ0KCktPm5vZGUoKTsKICAg
ICAgICAgaWYgKHN0YXJ0RWxlbWVudCAmJiBzdGFydEVsZW1lbnQtPnJvb3RFZGl0YWJsZUVsZW1l
bnQoKSA9PSBlbGVtZW50KCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAKaW5kZXggZDhlY2IyOC4uNmZiYWJlZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcApAQCAtOTYsMTAgKzk2LDEw
IEBAIHN0cnVjdCBTZWxlY3Rpb25JdGVyYXRvciB7CiBSZW5kZXJWaWV3OjpSZW5kZXJWaWV3KERv
Y3VtZW50JiBkb2N1bWVudCwgUGFzc1JlZjxSZW5kZXJTdHlsZT4gc3R5bGUpCiAgICAgOiBSZW5k
ZXJCbG9ja0Zsb3coZG9jdW1lbnQsIFdURjo6bW92ZShzdHlsZSkpCiAgICAgLCBtX2ZyYW1lVmll
dygqZG9jdW1lbnQudmlldygpKQotICAgICwgbV9zZWxlY3Rpb25TdGFydCgwKQotICAgICwgbV9z
ZWxlY3Rpb25FbmQoMCkKLSAgICAsIG1fc2VsZWN0aW9uU3RhcnRQb3MoLTEpCi0gICAgLCBtX3Nl
bGVjdGlvbkVuZFBvcygtMSkKKyAgICAsIG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0KDApCisgICAg
LCBtX3Vuc3BsaXRTZWxlY3Rpb25FbmQoMCkKKyAgICAsIG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0
UG9zKC0xKQorICAgICwgbV91bnNwbGl0U2VsZWN0aW9uRW5kUG9zKC0xKQogICAgICwgbV9yZW5k
ZXJlckNvdW50KDApCiAgICAgLCBtX21heGltYWxPdXRsaW5lU2l6ZSgwKQogICAgICwgbV9sYXp5
UmVwYWludFRpbWVyKHRoaXMsICZSZW5kZXJWaWV3OjpsYXp5UmVwYWludFRpbWVyRmlyZWQpCkBA
IC04NDIsMTUgKzg0MiwxNiBAQCB2b2lkIFJlbmRlclZpZXc6OnNldFNlbGVjdGlvbihSZW5kZXJP
YmplY3QqIHN0YXJ0LCBpbnQgc3RhcnRQb3MsIFJlbmRlck9iamVjdCogZQogICAgIGJvb2wgY2Fy
ZXRDaGFuZ2VkID0gbV9zZWxlY3Rpb25XYXNDYXJldCAhPSBmcmFtZSgpLnNlbGVjdGlvbigpLmlz
Q2FyZXQoKTsKICAgICBtX3NlbGVjdGlvbldhc0NhcmV0ID0gZnJhbWUoKS5zZWxlY3Rpb24oKS5p
c0NhcmV0KCk7CiAgICAgLy8gSnVzdCByZXR1cm4gaWYgdGhlIHNlbGVjdGlvbiBoYXNuJ3QgY2hh
bmdlZC4KLSAgICBpZiAobV9zZWxlY3Rpb25TdGFydCA9PSBzdGFydCAmJiBtX3NlbGVjdGlvblN0
YXJ0UG9zID09IHN0YXJ0UG9zICYmCi0gICAgICAgIG1fc2VsZWN0aW9uRW5kID09IGVuZCAmJiBt
X3NlbGVjdGlvbkVuZFBvcyA9PSBlbmRQb3MgJiYgIWNhcmV0Q2hhbmdlZCkKKyAgICBpZiAobV91
bnNwbGl0U2VsZWN0aW9uU3RhcnQgPT0gc3RhcnQgJiYgbV91bnNwbGl0U2VsZWN0aW9uU3RhcnRQ
b3MgPT0gc3RhcnRQb3MKKyAgICAgICAgJiYgbV91bnNwbGl0U2VsZWN0aW9uRW5kID09IGVuZCAm
JiBtX3Vuc3BsaXRTZWxlY3Rpb25FbmRQb3MgPT0gZW5kUG9zICYmICFjYXJldENoYW5nZWQpIHsK
ICAgICAgICAgcmV0dXJuOworICAgIH0KIAogICAgIC8vIFNldCBnbG9iYWwgcG9zaXRpb25zIGZv
ciBuZXcgc2VsZWN0aW9uLgotICAgIG1fc2VsZWN0aW9uU3RhcnQgPSBzdGFydDsKLSAgICBtX3Nl
bGVjdGlvblN0YXJ0UG9zID0gc3RhcnRQb3M7Ci0gICAgbV9zZWxlY3Rpb25FbmQgPSBlbmQ7Ci0g
ICAgbV9zZWxlY3Rpb25FbmRQb3MgPSBlbmRQb3M7CisgICAgbV91bnNwbGl0U2VsZWN0aW9uU3Rh
cnQgPSBzdGFydDsKKyAgICBtX3Vuc3BsaXRTZWxlY3Rpb25TdGFydFBvcyA9IHN0YXJ0UG9zOwor
ICAgIG1fdW5zcGxpdFNlbGVjdGlvbkVuZCA9IGVuZDsKKyAgICBtX3Vuc3BsaXRTZWxlY3Rpb25F
bmRQb3MgPSBlbmRQb3M7CiAKICAgICAvLyBJZiB0aGVyZSBpcyBubyBSZW5kZXJOYW1lZEZsb3dU
aHJlYWRzIHdlIGZvbGxvdyB0aGUgcmVndWxhciBzZWxlY3Rpb24uCiAgICAgaWYgKCFoYXNSZW5k
ZXJOYW1lZEZsb3dUaHJlYWRzKCkpIHsKQEAgLTEwNzgsMTAgKzEwNzksMTAgQEAgdm9pZCBSZW5k
ZXJWaWV3OjphcHBseVN1YnRyZWVTZWxlY3Rpb24oU2VsZWN0aW9uU3VidHJlZVJvb3QmIHJvb3Qs
IFJlbmRlck9iamVjdCoKIAogdm9pZCBSZW5kZXJWaWV3OjpnZXRTZWxlY3Rpb24oUmVuZGVyT2Jq
ZWN0KiYgc3RhcnRSZW5kZXJlciwgaW50JiBzdGFydE9mZnNldCwgUmVuZGVyT2JqZWN0KiYgZW5k
UmVuZGVyZXIsIGludCYgZW5kT2Zmc2V0KSBjb25zdAogewotICAgIHN0YXJ0UmVuZGVyZXIgPSBt
X3NlbGVjdGlvblN0YXJ0OwotICAgIHN0YXJ0T2Zmc2V0ID0gbV9zZWxlY3Rpb25TdGFydFBvczsK
LSAgICBlbmRSZW5kZXJlciA9IG1fc2VsZWN0aW9uRW5kOwotICAgIGVuZE9mZnNldCA9IG1fc2Vs
ZWN0aW9uRW5kUG9zOworICAgIHN0YXJ0UmVuZGVyZXIgPSBtX3Vuc3BsaXRTZWxlY3Rpb25TdGFy
dDsKKyAgICBzdGFydE9mZnNldCA9IG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0UG9zOworICAgIGVu
ZFJlbmRlcmVyID0gbV91bnNwbGl0U2VsZWN0aW9uRW5kOworICAgIGVuZE9mZnNldCA9IG1fdW5z
cGxpdFNlbGVjdGlvbkVuZFBvczsKIH0KIAogdm9pZCBSZW5kZXJWaWV3OjpjbGVhclNlbGVjdGlv
bigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaAppbmRleCA0ZWQ2ODMwLi5kNzc3
MmFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKQEAgLTg5LDggKzg5LDgg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0U2VsZWN0aW9uKFJlbmRlck9iamVjdCogc3RhcnQsIGlu
dCBzdGFydFBvcywgUmVuZGVyT2JqZWN0KiBlbmQsIGludCBlbmRQb3MsIFNlbGVjdGlvblJlcGFp
bnRNb2RlID0gUmVwYWludE5ld1hPUk9sZCk7CiAgICAgdm9pZCBnZXRTZWxlY3Rpb24oUmVuZGVy
T2JqZWN0KiYgc3RhcnRSZW5kZXJlciwgaW50JiBzdGFydE9mZnNldCwgUmVuZGVyT2JqZWN0KiYg
ZW5kUmVuZGVyZXIsIGludCYgZW5kT2Zmc2V0KSBjb25zdDsKICAgICB2b2lkIGNsZWFyU2VsZWN0
aW9uKCk7Ci0gICAgUmVuZGVyT2JqZWN0KiBzZWxlY3Rpb25TdGFydCgpIGNvbnN0IHsgcmV0dXJu
IG1fc2VsZWN0aW9uU3RhcnQ7IH0KLSAgICBSZW5kZXJPYmplY3QqIHNlbGVjdGlvbkVuZCgpIGNv
bnN0IHsgcmV0dXJuIG1fc2VsZWN0aW9uRW5kOyB9CisgICAgUmVuZGVyT2JqZWN0KiBzZWxlY3Rp
b25VbnNwbGl0U3RhcnQoKSBjb25zdCB7IHJldHVybiBtX3Vuc3BsaXRTZWxlY3Rpb25TdGFydDsg
fQorICAgIFJlbmRlck9iamVjdCogc2VsZWN0aW9uVW5zcGxpdEVuZCgpIGNvbnN0IHsgcmV0dXJu
IG1fdW5zcGxpdFNlbGVjdGlvbkVuZDsgfQogICAgIEludFJlY3Qgc2VsZWN0aW9uQm91bmRzKGJv
b2wgY2xpcFRvVmlzaWJsZUNvbnRlbnQgPSB0cnVlKSBjb25zdDsKICAgICB2b2lkIHJlcGFpbnRT
ZWxlY3Rpb24oKSBjb25zdDsKIApAQCAtMzEzLDEwICszMTMsMTAgQEAgcHJpdmF0ZToKIHByaXZh
dGU6CiAgICAgRnJhbWVWaWV3JiBtX2ZyYW1lVmlldzsKIAotICAgIFJlbmRlck9iamVjdCogbV9z
ZWxlY3Rpb25TdGFydDsKLSAgICBSZW5kZXJPYmplY3QqIG1fc2VsZWN0aW9uRW5kOwotICAgIGlu
dCBtX3NlbGVjdGlvblN0YXJ0UG9zOwotICAgIGludCBtX3NlbGVjdGlvbkVuZFBvczsKKyAgICBS
ZW5kZXJPYmplY3QqIG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0OworICAgIFJlbmRlck9iamVjdCog
bV91bnNwbGl0U2VsZWN0aW9uRW5kOworICAgIGludCBtX3Vuc3BsaXRTZWxlY3Rpb25TdGFydFBv
czsKKyAgICBpbnQgbV91bnNwbGl0U2VsZWN0aW9uRW5kUG9zOwogCiAgICAgdWludDY0X3QgbV9y
ZW5kZXJlckNvdW50OwogCi0tIAoxLjguNC4yCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235740</attachid>
            <date>2014-07-30 04:11:46 -0700</date>
            <delta_ts>2014-07-30 06:38:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>135233.patch</filename>
            <type>text/plain</type>
            <size>5652</size>
            <attacher name="Radu Stavila">stavila</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwYTZkOWI1Li5lMTA3N2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTQtMDctMzAgIFJhZHUgU3RhdmlsYSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAg
ICAgIE1lbWJlciBuYW1lIGNvbGxpc2lvbiBpbiBSZW5kZXJWaWV3IGFuZCBTZWxlY3Rpb25TdWJ0
cmVlUm9vdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTM1MjMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGhlIHNlbGVjdGlvblN0YXJ0L0VuZCBtZW1iZXJzIGluIFJlbmRlclZpZXcgaGF2ZSBiZWVuIHJl
bmFtZWQgdG8gZml4IGNvbmZ1c2lvbiBjYXVzZWQgYnkgdGhlIGZhY3QgdGhhdAorICAgICAgICBS
ZW5kZXJWaWV3IGluaGVyaXRzIFNlbGVjdGlvblN1YnRyZWVSb290LCB3aGljaCBhbHNvIGhhcyB0
aGUgc2FtZSBzZWxlY3Rpb25TdGFydC9FbmQgbWVtYmVycy4KKworICAgICAgICBObyBuZXcgdGVz
dHMgcmVxdWlyZWQsIG5vIG5ldyBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckJsb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjppc1NlbGVj
dGlvblJvb3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJWaWV3LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclZpZXc6OlJlbmRlclZpZXcpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVmlldzo6c2V0U2VsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclZpZXc6Omdl
dFNlbGVjdGlvbik6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclZpZXcuaDoKKwogMjAxNC0w
Ny0zMCAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CiAKICAgICAgICAgW1Rl
eE1hcF0gTW92ZSBUZXh0dXJlTWFwcGVyTGF5ZXI6OnRleHR1cmVNYXBwZXIoKSBkZWZpbml0aW9u
IGludG8gdGhlIGhlYWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAK
aW5kZXggYWJhNzRiYS4uNzM4ZGVmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJsb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2suY3BwCkBAIC0xODI4LDggKzE4MjgsOCBAQCBib29sIFJlbmRlckJsb2NrOjppc1NlbGVj
dGlvblJvb3QoKSBjb25zdAogICAgICAgICB8fCBpc1JlbmRlckZsb3dUaHJlYWQoKSB8fCBzdHls
ZSgpLmNvbHVtblNwYW4oKSA9PSBDb2x1bW5TcGFuQWxsKQogICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICAKLSAgICBpZiAodmlldygpLnNlbGVjdGlvblN0YXJ0KCkpIHsKLSAgICAgICAgTm9kZSog
c3RhcnRFbGVtZW50ID0gdmlldygpLnNlbGVjdGlvblN0YXJ0KCktPm5vZGUoKTsKKyAgICBpZiAo
dmlldygpLnNlbGVjdGlvblVuc3BsaXRTdGFydCgpKSB7CisgICAgICAgIE5vZGUqIHN0YXJ0RWxl
bWVudCA9IHZpZXcoKS5zZWxlY3Rpb25VbnNwbGl0U3RhcnQoKS0+bm9kZSgpOwogICAgICAgICBp
ZiAoc3RhcnRFbGVtZW50ICYmIHN0YXJ0RWxlbWVudC0+cm9vdEVkaXRhYmxlRWxlbWVudCgpID09
IGVsZW1lbnQoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcAppbmRleCA1MDRhNTMyLi5lY2M3ZjUwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCkBAIC05NiwxMCArOTYsMTAgQEAgc3Ry
dWN0IFNlbGVjdGlvbkl0ZXJhdG9yIHsKIFJlbmRlclZpZXc6OlJlbmRlclZpZXcoRG9jdW1lbnQm
IGRvY3VtZW50LCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKICAgICA6IFJlbmRlckJsb2Nr
Rmxvdyhkb2N1bWVudCwgV1RGOjptb3ZlKHN0eWxlKSkKICAgICAsIG1fZnJhbWVWaWV3KCpkb2N1
bWVudC52aWV3KCkpCi0gICAgLCBtX3NlbGVjdGlvblN0YXJ0KDApCi0gICAgLCBtX3NlbGVjdGlv
bkVuZCgwKQotICAgICwgbV9zZWxlY3Rpb25TdGFydFBvcygtMSkKLSAgICAsIG1fc2VsZWN0aW9u
RW5kUG9zKC0xKQorICAgICwgbV91bnNwbGl0U2VsZWN0aW9uU3RhcnQoMCkKKyAgICAsIG1fdW5z
cGxpdFNlbGVjdGlvbkVuZCgwKQorICAgICwgbV91bnNwbGl0U2VsZWN0aW9uU3RhcnRQb3MoLTEp
CisgICAgLCBtX3Vuc3BsaXRTZWxlY3Rpb25FbmRQb3MoLTEpCiAgICAgLCBtX3JlbmRlcmVyQ291
bnQoMCkKICAgICAsIG1fbWF4aW1hbE91dGxpbmVTaXplKDApCiAgICAgLCBtX2xhenlSZXBhaW50
VGltZXIodGhpcywgJlJlbmRlclZpZXc6OmxhenlSZXBhaW50VGltZXJGaXJlZCkKQEAgLTg0NSwx
NSArODQ1LDE2IEBAIHZvaWQgUmVuZGVyVmlldzo6c2V0U2VsZWN0aW9uKFJlbmRlck9iamVjdCog
c3RhcnQsIGludCBzdGFydFBvcywgUmVuZGVyT2JqZWN0KiBlCiAgICAgYm9vbCBjYXJldENoYW5n
ZWQgPSBtX3NlbGVjdGlvbldhc0NhcmV0ICE9IGZyYW1lKCkuc2VsZWN0aW9uKCkuaXNDYXJldCgp
OwogICAgIG1fc2VsZWN0aW9uV2FzQ2FyZXQgPSBmcmFtZSgpLnNlbGVjdGlvbigpLmlzQ2FyZXQo
KTsKICAgICAvLyBKdXN0IHJldHVybiBpZiB0aGUgc2VsZWN0aW9uIGhhc24ndCBjaGFuZ2VkLgot
ICAgIGlmIChtX3NlbGVjdGlvblN0YXJ0ID09IHN0YXJ0ICYmIG1fc2VsZWN0aW9uU3RhcnRQb3Mg
PT0gc3RhcnRQb3MgJiYKLSAgICAgICAgbV9zZWxlY3Rpb25FbmQgPT0gZW5kICYmIG1fc2VsZWN0
aW9uRW5kUG9zID09IGVuZFBvcyAmJiAhY2FyZXRDaGFuZ2VkKQorICAgIGlmIChtX3Vuc3BsaXRT
ZWxlY3Rpb25TdGFydCA9PSBzdGFydCAmJiBtX3Vuc3BsaXRTZWxlY3Rpb25TdGFydFBvcyA9PSBz
dGFydFBvcworICAgICAgICAmJiBtX3Vuc3BsaXRTZWxlY3Rpb25FbmQgPT0gZW5kICYmIG1fdW5z
cGxpdFNlbGVjdGlvbkVuZFBvcyA9PSBlbmRQb3MgJiYgIWNhcmV0Q2hhbmdlZCkgewogICAgICAg
ICByZXR1cm47CisgICAgfQogCiAgICAgLy8gU2V0IGdsb2JhbCBwb3NpdGlvbnMgZm9yIG5ldyBz
ZWxlY3Rpb24uCi0gICAgbV9zZWxlY3Rpb25TdGFydCA9IHN0YXJ0OwotICAgIG1fc2VsZWN0aW9u
U3RhcnRQb3MgPSBzdGFydFBvczsKLSAgICBtX3NlbGVjdGlvbkVuZCA9IGVuZDsKLSAgICBtX3Nl
bGVjdGlvbkVuZFBvcyA9IGVuZFBvczsKKyAgICBtX3Vuc3BsaXRTZWxlY3Rpb25TdGFydCA9IHN0
YXJ0OworICAgIG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0UG9zID0gc3RhcnRQb3M7CisgICAgbV91
bnNwbGl0U2VsZWN0aW9uRW5kID0gZW5kOworICAgIG1fdW5zcGxpdFNlbGVjdGlvbkVuZFBvcyA9
IGVuZFBvczsKIAogICAgIC8vIElmIHRoZXJlIGlzIG5vIFJlbmRlck5hbWVkRmxvd1RocmVhZHMg
d2UgZm9sbG93IHRoZSByZWd1bGFyIHNlbGVjdGlvbi4KICAgICBpZiAoIWhhc1JlbmRlck5hbWVk
Rmxvd1RocmVhZHMoKSkgewpAQCAtMTA4MiwxMCArMTA4MywxMCBAQCB2b2lkIFJlbmRlclZpZXc6
OmFwcGx5U3VidHJlZVNlbGVjdGlvbihTZWxlY3Rpb25TdWJ0cmVlUm9vdCYgcm9vdCwgUmVuZGVy
T2JqZWN0KgogCiB2b2lkIFJlbmRlclZpZXc6OmdldFNlbGVjdGlvbihSZW5kZXJPYmplY3QqJiBz
dGFydFJlbmRlcmVyLCBpbnQmIHN0YXJ0T2Zmc2V0LCBSZW5kZXJPYmplY3QqJiBlbmRSZW5kZXJl
ciwgaW50JiBlbmRPZmZzZXQpIGNvbnN0CiB7Ci0gICAgc3RhcnRSZW5kZXJlciA9IG1fc2VsZWN0
aW9uU3RhcnQ7Ci0gICAgc3RhcnRPZmZzZXQgPSBtX3NlbGVjdGlvblN0YXJ0UG9zOwotICAgIGVu
ZFJlbmRlcmVyID0gbV9zZWxlY3Rpb25FbmQ7Ci0gICAgZW5kT2Zmc2V0ID0gbV9zZWxlY3Rpb25F
bmRQb3M7CisgICAgc3RhcnRSZW5kZXJlciA9IG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0OworICAg
IHN0YXJ0T2Zmc2V0ID0gbV91bnNwbGl0U2VsZWN0aW9uU3RhcnRQb3M7CisgICAgZW5kUmVuZGVy
ZXIgPSBtX3Vuc3BsaXRTZWxlY3Rpb25FbmQ7CisgICAgZW5kT2Zmc2V0ID0gbV91bnNwbGl0U2Vs
ZWN0aW9uRW5kUG9zOwogfQogCiB2b2lkIFJlbmRlclZpZXc6OmNsZWFyU2VsZWN0aW9uKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmggYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCmluZGV4IDRlZDY4MzAuLmQ3NzcyYWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaApAQCAtODksOCArODksOCBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzZXRTZWxlY3Rpb24oUmVuZGVyT2JqZWN0KiBzdGFydCwgaW50IHN0YXJ0
UG9zLCBSZW5kZXJPYmplY3QqIGVuZCwgaW50IGVuZFBvcywgU2VsZWN0aW9uUmVwYWludE1vZGUg
PSBSZXBhaW50TmV3WE9ST2xkKTsKICAgICB2b2lkIGdldFNlbGVjdGlvbihSZW5kZXJPYmplY3Qq
JiBzdGFydFJlbmRlcmVyLCBpbnQmIHN0YXJ0T2Zmc2V0LCBSZW5kZXJPYmplY3QqJiBlbmRSZW5k
ZXJlciwgaW50JiBlbmRPZmZzZXQpIGNvbnN0OwogICAgIHZvaWQgY2xlYXJTZWxlY3Rpb24oKTsK
LSAgICBSZW5kZXJPYmplY3QqIHNlbGVjdGlvblN0YXJ0KCkgY29uc3QgeyByZXR1cm4gbV9zZWxl
Y3Rpb25TdGFydDsgfQotICAgIFJlbmRlck9iamVjdCogc2VsZWN0aW9uRW5kKCkgY29uc3QgeyBy
ZXR1cm4gbV9zZWxlY3Rpb25FbmQ7IH0KKyAgICBSZW5kZXJPYmplY3QqIHNlbGVjdGlvblVuc3Bs
aXRTdGFydCgpIGNvbnN0IHsgcmV0dXJuIG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0OyB9CisgICAg
UmVuZGVyT2JqZWN0KiBzZWxlY3Rpb25VbnNwbGl0RW5kKCkgY29uc3QgeyByZXR1cm4gbV91bnNw
bGl0U2VsZWN0aW9uRW5kOyB9CiAgICAgSW50UmVjdCBzZWxlY3Rpb25Cb3VuZHMoYm9vbCBjbGlw
VG9WaXNpYmxlQ29udGVudCA9IHRydWUpIGNvbnN0OwogICAgIHZvaWQgcmVwYWludFNlbGVjdGlv
bigpIGNvbnN0OwogCkBAIC0zMTMsMTAgKzMxMywxMCBAQCBwcml2YXRlOgogcHJpdmF0ZToKICAg
ICBGcmFtZVZpZXcmIG1fZnJhbWVWaWV3OwogCi0gICAgUmVuZGVyT2JqZWN0KiBtX3NlbGVjdGlv
blN0YXJ0OwotICAgIFJlbmRlck9iamVjdCogbV9zZWxlY3Rpb25FbmQ7Ci0gICAgaW50IG1fc2Vs
ZWN0aW9uU3RhcnRQb3M7Ci0gICAgaW50IG1fc2VsZWN0aW9uRW5kUG9zOworICAgIFJlbmRlck9i
amVjdCogbV91bnNwbGl0U2VsZWN0aW9uU3RhcnQ7CisgICAgUmVuZGVyT2JqZWN0KiBtX3Vuc3Bs
aXRTZWxlY3Rpb25FbmQ7CisgICAgaW50IG1fdW5zcGxpdFNlbGVjdGlvblN0YXJ0UG9zOworICAg
IGludCBtX3Vuc3BsaXRTZWxlY3Rpb25FbmRQb3M7CiAKICAgICB1aW50NjRfdCBtX3JlbmRlcmVy
Q291bnQ7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235743</attachid>
            <date>2014-07-30 06:38:27 -0700</date>
            <delta_ts>2014-07-30 09:23:20 -0700</delta_ts>
            <desc>Patch integrating reviewer feedback</desc>
            <filename>135233.patch</filename>
            <type>text/plain</type>
            <size>5652</size>
            <attacher name="Radu Stavila">stavila</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwYTZkOWI1Li5lMTA3N2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTQtMDctMzAgIFJhZHUgU3RhdmlsYSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAg
ICAgIE1lbWJlciBuYW1lIGNvbGxpc2lvbiBpbiBSZW5kZXJWaWV3IGFuZCBTZWxlY3Rpb25TdWJ0
cmVlUm9vdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTM1MjMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGhlIHNlbGVjdGlvblN0YXJ0L0VuZCBtZW1iZXJzIGluIFJlbmRlclZpZXcgaGF2ZSBiZWVuIHJl
bmFtZWQgdG8gZml4IGNvbmZ1c2lvbiBjYXVzZWQgYnkgdGhlIGZhY3QgdGhhdAorICAgICAgICBS
ZW5kZXJWaWV3IGluaGVyaXRzIFNlbGVjdGlvblN1YnRyZWVSb290LCB3aGljaCBhbHNvIGhhcyB0
aGUgc2FtZSBzZWxlY3Rpb25TdGFydC9FbmQgbWVtYmVycy4KKworICAgICAgICBObyBuZXcgdGVz
dHMgcmVxdWlyZWQsIG5vIG5ldyBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckJsb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrOjppc1NlbGVj
dGlvblJvb3QpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJWaWV3LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclZpZXc6OlJlbmRlclZpZXcpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVmlldzo6c2V0U2VsZWN0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclZpZXc6Omdl
dFNlbGVjdGlvbik6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclZpZXcuaDoKKwogMjAxNC0w
Ny0zMCAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CiAKICAgICAgICAgW1Rl
eE1hcF0gTW92ZSBUZXh0dXJlTWFwcGVyTGF5ZXI6OnRleHR1cmVNYXBwZXIoKSBkZWZpbml0aW9u
IGludG8gdGhlIGhlYWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAK
aW5kZXggYWJhNzRiYS4uNzM4ZGVmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJsb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2suY3BwCkBAIC0xODI4LDggKzE4MjgsOCBAQCBib29sIFJlbmRlckJsb2NrOjppc1NlbGVj
dGlvblJvb3QoKSBjb25zdAogICAgICAgICB8fCBpc1JlbmRlckZsb3dUaHJlYWQoKSB8fCBzdHls
ZSgpLmNvbHVtblNwYW4oKSA9PSBDb2x1bW5TcGFuQWxsKQogICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICAKLSAgICBpZiAodmlldygpLnNlbGVjdGlvblN0YXJ0KCkpIHsKLSAgICAgICAgTm9kZSog
c3RhcnRFbGVtZW50ID0gdmlldygpLnNlbGVjdGlvblN0YXJ0KCktPm5vZGUoKTsKKyAgICBpZiAo
dmlldygpLnNlbGVjdGlvblVuc3BsaXRTdGFydCgpKSB7CisgICAgICAgIE5vZGUqIHN0YXJ0RWxl
bWVudCA9IHZpZXcoKS5zZWxlY3Rpb25VbnNwbGl0U3RhcnQoKS0+bm9kZSgpOwogICAgICAgICBp
ZiAoc3RhcnRFbGVtZW50ICYmIHN0YXJ0RWxlbWVudC0+cm9vdEVkaXRhYmxlRWxlbWVudCgpID09
IGVsZW1lbnQoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcAppbmRleCA1MDRhNTMyLi4yZjI2NjA1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCkBAIC05NiwxMCArOTYsMTAgQEAgc3Ry
dWN0IFNlbGVjdGlvbkl0ZXJhdG9yIHsKIFJlbmRlclZpZXc6OlJlbmRlclZpZXcoRG9jdW1lbnQm
IGRvY3VtZW50LCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKICAgICA6IFJlbmRlckJsb2Nr
Rmxvdyhkb2N1bWVudCwgV1RGOjptb3ZlKHN0eWxlKSkKICAgICAsIG1fZnJhbWVWaWV3KCpkb2N1
bWVudC52aWV3KCkpCi0gICAgLCBtX3NlbGVjdGlvblN0YXJ0KDApCi0gICAgLCBtX3NlbGVjdGlv
bkVuZCgwKQotICAgICwgbV9zZWxlY3Rpb25TdGFydFBvcygtMSkKLSAgICAsIG1fc2VsZWN0aW9u
RW5kUG9zKC0xKQorICAgICwgbV9zZWxlY3Rpb25VbnNwbGl0U3RhcnQoMCkKKyAgICAsIG1fc2Vs
ZWN0aW9uVW5zcGxpdEVuZCgwKQorICAgICwgbV9zZWxlY3Rpb25VbnNwbGl0U3RhcnRQb3MoLTEp
CisgICAgLCBtX3NlbGVjdGlvblVuc3BsaXRFbmRQb3MoLTEpCiAgICAgLCBtX3JlbmRlcmVyQ291
bnQoMCkKICAgICAsIG1fbWF4aW1hbE91dGxpbmVTaXplKDApCiAgICAgLCBtX2xhenlSZXBhaW50
VGltZXIodGhpcywgJlJlbmRlclZpZXc6OmxhenlSZXBhaW50VGltZXJGaXJlZCkKQEAgLTg0NSwx
NSArODQ1LDE2IEBAIHZvaWQgUmVuZGVyVmlldzo6c2V0U2VsZWN0aW9uKFJlbmRlck9iamVjdCog
c3RhcnQsIGludCBzdGFydFBvcywgUmVuZGVyT2JqZWN0KiBlCiAgICAgYm9vbCBjYXJldENoYW5n
ZWQgPSBtX3NlbGVjdGlvbldhc0NhcmV0ICE9IGZyYW1lKCkuc2VsZWN0aW9uKCkuaXNDYXJldCgp
OwogICAgIG1fc2VsZWN0aW9uV2FzQ2FyZXQgPSBmcmFtZSgpLnNlbGVjdGlvbigpLmlzQ2FyZXQo
KTsKICAgICAvLyBKdXN0IHJldHVybiBpZiB0aGUgc2VsZWN0aW9uIGhhc24ndCBjaGFuZ2VkLgot
ICAgIGlmIChtX3NlbGVjdGlvblN0YXJ0ID09IHN0YXJ0ICYmIG1fc2VsZWN0aW9uU3RhcnRQb3Mg
PT0gc3RhcnRQb3MgJiYKLSAgICAgICAgbV9zZWxlY3Rpb25FbmQgPT0gZW5kICYmIG1fc2VsZWN0
aW9uRW5kUG9zID09IGVuZFBvcyAmJiAhY2FyZXRDaGFuZ2VkKQorICAgIGlmIChtX3NlbGVjdGlv
blVuc3BsaXRTdGFydCA9PSBzdGFydCAmJiBtX3NlbGVjdGlvblVuc3BsaXRTdGFydFBvcyA9PSBz
dGFydFBvcworICAgICAgICAmJiBtX3NlbGVjdGlvblVuc3BsaXRFbmQgPT0gZW5kICYmIG1fc2Vs
ZWN0aW9uVW5zcGxpdEVuZFBvcyA9PSBlbmRQb3MgJiYgIWNhcmV0Q2hhbmdlZCkgewogICAgICAg
ICByZXR1cm47CisgICAgfQogCiAgICAgLy8gU2V0IGdsb2JhbCBwb3NpdGlvbnMgZm9yIG5ldyBz
ZWxlY3Rpb24uCi0gICAgbV9zZWxlY3Rpb25TdGFydCA9IHN0YXJ0OwotICAgIG1fc2VsZWN0aW9u
U3RhcnRQb3MgPSBzdGFydFBvczsKLSAgICBtX3NlbGVjdGlvbkVuZCA9IGVuZDsKLSAgICBtX3Nl
bGVjdGlvbkVuZFBvcyA9IGVuZFBvczsKKyAgICBtX3NlbGVjdGlvblVuc3BsaXRTdGFydCA9IHN0
YXJ0OworICAgIG1fc2VsZWN0aW9uVW5zcGxpdFN0YXJ0UG9zID0gc3RhcnRQb3M7CisgICAgbV9z
ZWxlY3Rpb25VbnNwbGl0RW5kID0gZW5kOworICAgIG1fc2VsZWN0aW9uVW5zcGxpdEVuZFBvcyA9
IGVuZFBvczsKIAogICAgIC8vIElmIHRoZXJlIGlzIG5vIFJlbmRlck5hbWVkRmxvd1RocmVhZHMg
d2UgZm9sbG93IHRoZSByZWd1bGFyIHNlbGVjdGlvbi4KICAgICBpZiAoIWhhc1JlbmRlck5hbWVk
Rmxvd1RocmVhZHMoKSkgewpAQCAtMTA4MiwxMCArMTA4MywxMCBAQCB2b2lkIFJlbmRlclZpZXc6
OmFwcGx5U3VidHJlZVNlbGVjdGlvbihTZWxlY3Rpb25TdWJ0cmVlUm9vdCYgcm9vdCwgUmVuZGVy
T2JqZWN0KgogCiB2b2lkIFJlbmRlclZpZXc6OmdldFNlbGVjdGlvbihSZW5kZXJPYmplY3QqJiBz
dGFydFJlbmRlcmVyLCBpbnQmIHN0YXJ0T2Zmc2V0LCBSZW5kZXJPYmplY3QqJiBlbmRSZW5kZXJl
ciwgaW50JiBlbmRPZmZzZXQpIGNvbnN0CiB7Ci0gICAgc3RhcnRSZW5kZXJlciA9IG1fc2VsZWN0
aW9uU3RhcnQ7Ci0gICAgc3RhcnRPZmZzZXQgPSBtX3NlbGVjdGlvblN0YXJ0UG9zOwotICAgIGVu
ZFJlbmRlcmVyID0gbV9zZWxlY3Rpb25FbmQ7Ci0gICAgZW5kT2Zmc2V0ID0gbV9zZWxlY3Rpb25F
bmRQb3M7CisgICAgc3RhcnRSZW5kZXJlciA9IG1fc2VsZWN0aW9uVW5zcGxpdFN0YXJ0OworICAg
IHN0YXJ0T2Zmc2V0ID0gbV9zZWxlY3Rpb25VbnNwbGl0U3RhcnRQb3M7CisgICAgZW5kUmVuZGVy
ZXIgPSBtX3NlbGVjdGlvblVuc3BsaXRFbmQ7CisgICAgZW5kT2Zmc2V0ID0gbV9zZWxlY3Rpb25V
bnNwbGl0RW5kUG9zOwogfQogCiB2b2lkIFJlbmRlclZpZXc6OmNsZWFyU2VsZWN0aW9uKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmggYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5oCmluZGV4IDRlZDY4MzAuLjFhZWI4YzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaApAQCAtODksOCArODksOCBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzZXRTZWxlY3Rpb24oUmVuZGVyT2JqZWN0KiBzdGFydCwgaW50IHN0YXJ0
UG9zLCBSZW5kZXJPYmplY3QqIGVuZCwgaW50IGVuZFBvcywgU2VsZWN0aW9uUmVwYWludE1vZGUg
PSBSZXBhaW50TmV3WE9ST2xkKTsKICAgICB2b2lkIGdldFNlbGVjdGlvbihSZW5kZXJPYmplY3Qq
JiBzdGFydFJlbmRlcmVyLCBpbnQmIHN0YXJ0T2Zmc2V0LCBSZW5kZXJPYmplY3QqJiBlbmRSZW5k
ZXJlciwgaW50JiBlbmRPZmZzZXQpIGNvbnN0OwogICAgIHZvaWQgY2xlYXJTZWxlY3Rpb24oKTsK
LSAgICBSZW5kZXJPYmplY3QqIHNlbGVjdGlvblN0YXJ0KCkgY29uc3QgeyByZXR1cm4gbV9zZWxl
Y3Rpb25TdGFydDsgfQotICAgIFJlbmRlck9iamVjdCogc2VsZWN0aW9uRW5kKCkgY29uc3QgeyBy
ZXR1cm4gbV9zZWxlY3Rpb25FbmQ7IH0KKyAgICBSZW5kZXJPYmplY3QqIHNlbGVjdGlvblVuc3Bs
aXRTdGFydCgpIGNvbnN0IHsgcmV0dXJuIG1fc2VsZWN0aW9uVW5zcGxpdFN0YXJ0OyB9CisgICAg
UmVuZGVyT2JqZWN0KiBzZWxlY3Rpb25VbnNwbGl0RW5kKCkgY29uc3QgeyByZXR1cm4gbV9zZWxl
Y3Rpb25VbnNwbGl0RW5kOyB9CiAgICAgSW50UmVjdCBzZWxlY3Rpb25Cb3VuZHMoYm9vbCBjbGlw
VG9WaXNpYmxlQ29udGVudCA9IHRydWUpIGNvbnN0OwogICAgIHZvaWQgcmVwYWludFNlbGVjdGlv
bigpIGNvbnN0OwogCkBAIC0zMTMsMTAgKzMxMywxMCBAQCBwcml2YXRlOgogcHJpdmF0ZToKICAg
ICBGcmFtZVZpZXcmIG1fZnJhbWVWaWV3OwogCi0gICAgUmVuZGVyT2JqZWN0KiBtX3NlbGVjdGlv
blN0YXJ0OwotICAgIFJlbmRlck9iamVjdCogbV9zZWxlY3Rpb25FbmQ7Ci0gICAgaW50IG1fc2Vs
ZWN0aW9uU3RhcnRQb3M7Ci0gICAgaW50IG1fc2VsZWN0aW9uRW5kUG9zOworICAgIFJlbmRlck9i
amVjdCogbV9zZWxlY3Rpb25VbnNwbGl0U3RhcnQ7CisgICAgUmVuZGVyT2JqZWN0KiBtX3NlbGVj
dGlvblVuc3BsaXRFbmQ7CisgICAgaW50IG1fc2VsZWN0aW9uVW5zcGxpdFN0YXJ0UG9zOworICAg
IGludCBtX3NlbGVjdGlvblVuc3BsaXRFbmRQb3M7CiAKICAgICB1aW50NjRfdCBtX3JlbmRlcmVy
Q291bnQ7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>