<?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>173762</bug_id>
          
          <creation_ts>2017-06-23 03:14:47 -0700</creation_ts>
          <short_desc>[ThreadedCompositor] Update and retrieve scene attributes under a Lock</short_desc>
          <delta_ts>2017-07-03 02:56:52 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>magomez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1322236</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-06-23 03:14:47 -0700</bug_when>
    <thetext>[ThreadedCompositor] Update and retrieve scene attributes under a Lock</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1322239</commentid>
    <comment_count>1</comment_count>
      <attachid>313704</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-06-23 03:37:01 -0700</bug_when>
    <thetext>Created attachment 313704
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1322262</commentid>
    <comment_count>2</comment_count>
      <attachid>313704</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-06-23 05:06:45 -0700</bug_when>
    <thetext>Comment on attachment 313704
Patch

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

&gt; Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:208
&gt; +    WebCore::IntSize viewportSize;
&gt; +    WebCore::IntPoint scrollPosition;

We don&apos;t need the WebCore::

&gt; Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:221
&gt; +    float scaleFactor;
&gt; +    bool drawsBackground;
&gt; +    bool needsResize;
&gt; +    {
&gt; +        LockHolder locker(m_attributes.lock);
&gt; +        viewportSize = m_attributes.viewportSize;
&gt; +        scrollPosition = m_attributes.scrollPosition;
&gt; +        scaleFactor = m_attributes.scaleFactor;
&gt; +        drawsBackground = m_attributes.drawsBackground;
&gt; +        needsResize = m_attributes.needsResize;
&gt; +
&gt; +        // Reset the needsResize attribute to false.
&gt; +        m_attributes.needsResize = false;

Could we simply all this using WTFMove()? Maybe leaving the lock out of the struct and overriding the move in the struct to ensure a reset state after the move.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1322774</commentid>
    <comment_count>3</comment_count>
      <attachid>313704</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-06-26 02:32:16 -0700</bug_when>
    <thetext>Comment on attachment 313704
Patch

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

&gt;&gt; Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:221
&gt;&gt; +        m_attributes.needsResize = false;
&gt; 
&gt; Could we simply all this using WTFMove()? Maybe leaving the lock out of the struct and overriding the move in the struct to ensure a reset state after the move.

The data has to be copied. But it could be simplified by gathering all the values in an additional struct. I&apos;ll do that in a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1325073</commentid>
    <comment_count>4</comment_count>
      <attachid>313704</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-07-03 02:56:47 -0700</bug_when>
    <thetext>Comment on attachment 313704
Patch

Clearing flags on attachment: 313704

Committed r219067: &lt;http://trac.webkit.org/changeset/219067&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1325074</commentid>
    <comment_count>5</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-07-03 02:56:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>313704</attachid>
            <date>2017-06-23 03:37:01 -0700</date>
            <delta_ts>2017-07-03 02:56:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-173762-20170623123700.patch</filename>
            <type>text/plain</type>
            <size>8694</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4NzM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTM1M2FmMGZjYjc1MzQx
NjYzZDFhYzk1OGFhMGQ5YjE4Mjk5YjQ5Ny4uOTBkNDYwNjMyMzU0YjAwYzFiODkyYWQxMTE1Yjk1
YTNmMzZlNzlhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTA2LTIzICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBbVGhyZWFkZWRDb21w
b3NpdG9yXSBVcGRhdGUgYW5kIHJldHJpZXZlIHNjZW5lIGF0dHJpYnV0ZXMgdW5kZXIgYSBMb2Nr
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzM3NjIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnN0ZWFk
IG9mIGRpc3BhdGNoaW5nIHNlcGFyYXRlIHRhc2tzIG9uIHRoZSBjb21wb3NpdGlvbiBydW4gbG9v
cCwgdXBkYXRlCisgICAgICAgIHZhcmlvdXMgc2NlbmUgYXR0cmlidXRlcyBieSBsb2NraW5nIGEg
Y29tbW9uIGxvY2sgb2JqZWN0IGFuZCB1cGRhdGluZyB0aGUKKyAgICAgICAgYXBwcm9wcmlhdGUg
YXR0cmlidXRlLgorCisgICAgICAgIEluIFRocmVhZGVkQ29tcG9zaXRvcjo6cmVuZGVyTGF5ZXJU
cmVlKCksIHdoZXJlIHRoZXNlIGF0dHJpYnV0ZXMgYXJlIHVzZWQKKyAgICAgICAgaW4gc2NlbmUg
Y29tcG9zaXRpb24sIHRoZSBsb2NrIGlzIGFnYWluIG9idGFpbmVkIGFuZCB0aGUgYXR0cmlidXRl
cyBjb3BpZWQKKyAgICAgICAgaW50byBsb2NhbCB2YXJpYWJsZXMsIHJlbGVhc2luZyB0aGUgbG9j
ayBhZnRlcndhcmRzLiBUaGUgYXR0cmlidXRlIHZhbHVlcworICAgICAgICBpbiBsb2NhbCBjb3Bp
ZXMgYXJlIHRoZW4gdXNlZCBmb3IgdGhhdCByZW5kZXJMYXllclRyZWUoKSBpbnZvY2F0aW9uLgor
CisgICAgICAgIFRoaXMgYXBwcm9hY2ggaXMgbW9yZSBlZmZpY2llbnQgdGhhbiBkaXNwYXRjaGlu
ZyBzZXBhcmF0ZSB0YXNrcyB0aGF0IGNhbgorICAgICAgICByYWNlIGFnYWluc3QgcmVuZGVyTGF5
ZXJUcmVlKCkgZGlzcGF0Y2hlcy4KKworICAgICAgICAqIFNoYXJlZC9Db29yZGluYXRlZEdyYXBo
aWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBvc2l0b3IuY3BwOgorICAgICAgICAo
V2ViS2l0OjpUaHJlYWRlZENvbXBvc2l0b3I6OlRocmVhZGVkQ29tcG9zaXRvcik6CisgICAgICAg
IChXZWJLaXQ6Om1fZGlzcGxheVJlZnJlc2hNb25pdG9yKToKKyAgICAgICAgKFdlYktpdDo6VGhy
ZWFkZWRDb21wb3NpdG9yOjpzZXRTY2FsZUZhY3Rvcik6CisgICAgICAgIChXZWJLaXQ6OlRocmVh
ZGVkQ29tcG9zaXRvcjo6c2V0U2Nyb2xsUG9zaXRpb24pOgorICAgICAgICAoV2ViS2l0OjpUaHJl
YWRlZENvbXBvc2l0b3I6OnNldFZpZXdwb3J0U2l6ZSk6CisgICAgICAgIChXZWJLaXQ6OlRocmVh
ZGVkQ29tcG9zaXRvcjo6c2V0RHJhd3NCYWNrZ3JvdW5kKToKKyAgICAgICAgKFdlYktpdDo6VGhy
ZWFkZWRDb21wb3NpdG9yOjpyZW5kZXJMYXllclRyZWUpOgorICAgICAgICAqIFNoYXJlZC9Db29y
ZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBvc2l0b3IuaDoK
KwogMjAxNy0wNi0yMiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbaU9TIERuRF0gW1dLMl0gRW5hYmxlIGluLWFwcCBkcmFnZ2luZyBmcm9tIFdLV2Vi
VmlldyBvbiB0aGUgcGhvbmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29y
ZGluYXRlZEdyYXBoaWNzL3RocmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBvc2l0b3IuY3Bw
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21w
b3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5jcHAKaW5kZXggMjlmMGY2MDJlMmVjZTlmYWVjMmJm
NjFlYmZiMzNiNjI0MjZmZjcxMS4uOTI4ZGZlODAxNjQ3YzMzNWMxMDZkMTljN2VkODJiZWQyOGEx
MTZhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhp
Y3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1Ro
cmVhZGVkQ29tcG9zaXRvci5jcHAKQEAgLTUxLDE2ICs1MSwyMSBAQCBSZWY8VGhyZWFkZWRDb21w
b3NpdG9yPiBUaHJlYWRlZENvbXBvc2l0b3I6OmNyZWF0ZShDbGllbnQmIGNsaWVudCwgV2ViUGFn
ZSYgd2ViUAogCiBUaHJlYWRlZENvbXBvc2l0b3I6OlRocmVhZGVkQ29tcG9zaXRvcihDbGllbnQm
IGNsaWVudCwgV2ViUGFnZSYgd2ViUGFnZSwgY29uc3QgSW50U2l6ZSYgdmlld3BvcnRTaXplLCBm
bG9hdCBzY2FsZUZhY3RvciwgU2hvdWxkRG9GcmFtZVN5bmMgZG9GcmFtZVN5bmMsIFRleHR1cmVN
YXBwZXI6OlBhaW50RmxhZ3MgcGFpbnRGbGFncykKICAgICA6IG1fY2xpZW50KGNsaWVudCkKLSAg
ICAsIG1fdmlld3BvcnRTaXplKHZpZXdwb3J0U2l6ZSkKLSAgICAsIG1fc2NhbGVGYWN0b3Ioc2Nh
bGVGYWN0b3IpCiAgICAgLCBtX2RvRnJhbWVTeW5jKGRvRnJhbWVTeW5jKQogICAgICwgbV9wYWlu
dEZsYWdzKHBhaW50RmxhZ3MpCi0gICAgLCBtX25lZWRzUmVzaXplKCF2aWV3cG9ydFNpemUuaXNF
bXB0eSgpKQogICAgICwgbV9jb21wb3NpdGluZ1J1bkxvb3Aoc3RkOjptYWtlX3VuaXF1ZTxDb21w
b3NpdGluZ1J1bkxvb3A+KFt0aGlzXSB7IHJlbmRlckxheWVyVHJlZSgpOyB9KSkKICNpZiBVU0Uo
UkVRVUVTVF9BTklNQVRJT05fRlJBTUVfRElTUExBWV9NT05JVE9SKQogICAgICwgbV9kaXNwbGF5
UmVmcmVzaE1vbml0b3IoVGhyZWFkZWREaXNwbGF5UmVmcmVzaE1vbml0b3I6OmNyZWF0ZSgqdGhp
cykpCiAjZW5kaWYKIHsKKyAgICB7CisgICAgICAgIC8vIExvY2tpbmcgaXNuJ3QgcmVhbGx5IG5l
Y2Vzc2FyeSBoZXJlLCBidXQgaXQncyBkb25lIGZvciBjb25zaXN0ZW5jeS4KKyAgICAgICAgTG9j
a0hvbGRlciBsb2NrZXIobV9hdHRyaWJ1dGVzLmxvY2spOworICAgICAgICBtX2F0dHJpYnV0ZXMu
dmlld3BvcnRTaXplID0gdmlld3BvcnRTaXplOworICAgICAgICBtX2F0dHJpYnV0ZXMuc2NhbGVG
YWN0b3IgPSBzY2FsZUZhY3RvcjsKKyAgICAgICAgbV9hdHRyaWJ1dGVzLm5lZWRzUmVzaXplID0g
IXZpZXdwb3J0U2l6ZS5pc0VtcHR5KCk7CisgICAgfQorCiAgICAgbV9jbGllbnRSZW5kZXJzTmV4
dEZyYW1lLnN0b3JlKGZhbHNlKTsKICAgICBtX2Nvb3JkaW5hdGVVcGRhdGVDb21wbGV0aW9uV2l0
aENsaWVudC5zdG9yZShmYWxzZSk7CiAKQEAgLTEzMCwzNyArMTM1LDMzIEBAIHZvaWQgVGhyZWFk
ZWRDb21wb3NpdG9yOjpzZXROYXRpdmVTdXJmYWNlSGFuZGxlRm9yQ29tcG9zaXRpbmcodWludDY0
X3QgaGFuZGxlKQogCiB2b2lkIFRocmVhZGVkQ29tcG9zaXRvcjo6c2V0U2NhbGVGYWN0b3IoZmxv
YXQgc2NhbGUpCiB7Ci0gICAgbV9jb21wb3NpdGluZ1J1bkxvb3AtPnBlcmZvcm1UYXNrKFt0aGlz
LCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHNjYWxlXSB7Ci0gICAgICAgIG1fc2Nh
bGVGYWN0b3IgPSBzY2FsZTsKLSAgICAgICAgbV9jb21wb3NpdGluZ1J1bkxvb3AtPnNjaGVkdWxl
VXBkYXRlKCk7Ci0gICAgfSk7CisgICAgTG9ja0hvbGRlciBsb2NrZXIobV9hdHRyaWJ1dGVzLmxv
Y2spOworICAgIG1fYXR0cmlidXRlcy5zY2FsZUZhY3RvciA9IHNjYWxlOworICAgIG1fY29tcG9z
aXRpbmdSdW5Mb29wLT5zY2hlZHVsZVVwZGF0ZSgpOwogfQogCiB2b2lkIFRocmVhZGVkQ29tcG9z
aXRvcjo6c2V0U2Nyb2xsUG9zaXRpb24oY29uc3QgSW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uLCBm
bG9hdCBzY2FsZSkKIHsKLSAgICBtX2NvbXBvc2l0aW5nUnVuTG9vcC0+cGVyZm9ybVRhc2soW3Ro
aXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgc2Nyb2xsUG9zaXRpb24sIHNjYWxl
XSB7Ci0gICAgICAgIG1fc2Nyb2xsUG9zaXRpb24gPSBzY3JvbGxQb3NpdGlvbjsKLSAgICAgICAg
bV9zY2FsZUZhY3RvciA9IHNjYWxlOwotICAgICAgICBtX2NvbXBvc2l0aW5nUnVuTG9vcC0+c2No
ZWR1bGVVcGRhdGUoKTsKLSAgICB9KTsKKyAgICBMb2NrSG9sZGVyIGxvY2tlcihtX2F0dHJpYnV0
ZXMubG9jayk7CisgICAgbV9hdHRyaWJ1dGVzLnNjcm9sbFBvc2l0aW9uID0gc2Nyb2xsUG9zaXRp
b247CisgICAgbV9hdHRyaWJ1dGVzLnNjYWxlRmFjdG9yID0gc2NhbGU7CisgICAgbV9jb21wb3Np
dGluZ1J1bkxvb3AtPnNjaGVkdWxlVXBkYXRlKCk7CiB9CiAKIHZvaWQgVGhyZWFkZWRDb21wb3Np
dG9yOjpzZXRWaWV3cG9ydFNpemUoY29uc3QgSW50U2l6ZSYgdmlld3BvcnRTaXplLCBmbG9hdCBz
Y2FsZSkKIHsKLSAgICBtX2NvbXBvc2l0aW5nUnVuTG9vcC0+cGVyZm9ybVRhc2tTeW5jKFt0aGlz
LCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHZpZXdwb3J0U2l6ZSwgc2NhbGVdIHsK
LSAgICAgICAgbV92aWV3cG9ydFNpemUgPSB2aWV3cG9ydFNpemU7Ci0gICAgICAgIG1fc2NhbGVG
YWN0b3IgPSBzY2FsZTsKLSAgICAgICAgbV9uZWVkc1Jlc2l6ZSA9IHRydWU7Ci0gICAgICAgIG1f
Y29tcG9zaXRpbmdSdW5Mb29wLT5zY2hlZHVsZVVwZGF0ZSgpOwotICAgIH0pOworICAgIExvY2tI
b2xkZXIgbG9ja2VyKG1fYXR0cmlidXRlcy5sb2NrKTsKKyAgICBtX2F0dHJpYnV0ZXMudmlld3Bv
cnRTaXplID0gdmlld3BvcnRTaXplOworICAgIG1fYXR0cmlidXRlcy5zY2FsZUZhY3RvciA9IHNj
YWxlOworICAgIG1fYXR0cmlidXRlcy5uZWVkc1Jlc2l6ZSA9IHRydWU7CisgICAgbV9jb21wb3Np
dGluZ1J1bkxvb3AtPnNjaGVkdWxlVXBkYXRlKCk7CiB9CiAKIHZvaWQgVGhyZWFkZWRDb21wb3Np
dG9yOjpzZXREcmF3c0JhY2tncm91bmQoYm9vbCBkcmF3c0JhY2tncm91bmQpCiB7Ci0gICAgbV9j
b21wb3NpdGluZ1J1bkxvb3AtPnBlcmZvcm1UYXNrKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gUmVm
PFRocmVhZGVkQ29tcG9zaXRvcj4oKnRoaXMpLCBkcmF3c0JhY2tncm91bmRdIHsKLSAgICAgICAg
bV9kcmF3c0JhY2tncm91bmQgPSBkcmF3c0JhY2tncm91bmQ7Ci0gICAgICAgIG1fY29tcG9zaXRp
bmdSdW5Mb29wLT5zY2hlZHVsZVVwZGF0ZSgpOwotICAgIH0pOworICAgIExvY2tIb2xkZXIgbG9j
a2VyKG1fYXR0cmlidXRlcy5sb2NrKTsKKyAgICBtX2F0dHJpYnV0ZXMuZHJhd3NCYWNrZ3JvdW5k
ID0gZHJhd3NCYWNrZ3JvdW5kOworICAgIG1fY29tcG9zaXRpbmdSdW5Mb29wLT5zY2hlZHVsZVVw
ZGF0ZSgpOwogfQogCiB2b2lkIFRocmVhZGVkQ29tcG9zaXRvcjo6cmVuZGVyTmV4dEZyYW1lKCkK
QEAgLTIwMiwyMiArMjAzLDM4IEBAIHZvaWQgVGhyZWFkZWRDb21wb3NpdG9yOjpyZW5kZXJMYXll
clRyZWUoKQogCiAgICAgbV9jbGllbnQud2lsbFJlbmRlckZyYW1lKCk7CiAKLSAgICBpZiAobV9u
ZWVkc1Jlc2l6ZSkgewotICAgICAgICBnbFZpZXdwb3J0KDAsIDAsIG1fdmlld3BvcnRTaXplLndp
ZHRoKCksIG1fdmlld3BvcnRTaXplLmhlaWdodCgpKTsKLSAgICAgICAgbV9uZWVkc1Jlc2l6ZSA9
IGZhbHNlOworICAgIC8vIFJldHJpZXZlIHRoZSBzY2VuZSBhdHRyaWJ1dGVzIGluIGEgdGhyZWFk
LXNhZmUgbWFubmVyLgorICAgIFdlYkNvcmU6OkludFNpemUgdmlld3BvcnRTaXplOworICAgIFdl
YkNvcmU6OkludFBvaW50IHNjcm9sbFBvc2l0aW9uOworICAgIGZsb2F0IHNjYWxlRmFjdG9yOwor
ICAgIGJvb2wgZHJhd3NCYWNrZ3JvdW5kOworICAgIGJvb2wgbmVlZHNSZXNpemU7CisgICAgewor
ICAgICAgICBMb2NrSG9sZGVyIGxvY2tlcihtX2F0dHJpYnV0ZXMubG9jayk7CisgICAgICAgIHZp
ZXdwb3J0U2l6ZSA9IG1fYXR0cmlidXRlcy52aWV3cG9ydFNpemU7CisgICAgICAgIHNjcm9sbFBv
c2l0aW9uID0gbV9hdHRyaWJ1dGVzLnNjcm9sbFBvc2l0aW9uOworICAgICAgICBzY2FsZUZhY3Rv
ciA9IG1fYXR0cmlidXRlcy5zY2FsZUZhY3RvcjsKKyAgICAgICAgZHJhd3NCYWNrZ3JvdW5kID0g
bV9hdHRyaWJ1dGVzLmRyYXdzQmFja2dyb3VuZDsKKyAgICAgICAgbmVlZHNSZXNpemUgPSBtX2F0
dHJpYnV0ZXMubmVlZHNSZXNpemU7CisKKyAgICAgICAgLy8gUmVzZXQgdGhlIG5lZWRzUmVzaXpl
IGF0dHJpYnV0ZSB0byBmYWxzZS4KKyAgICAgICAgbV9hdHRyaWJ1dGVzLm5lZWRzUmVzaXplID0g
ZmFsc2U7CiAgICAgfQotICAgIEZsb2F0UmVjdCBjbGlwUmVjdCgwLCAwLCBtX3ZpZXdwb3J0U2l6
ZS53aWR0aCgpLCBtX3ZpZXdwb3J0U2l6ZS5oZWlnaHQoKSk7CisKKyAgICBpZiAobmVlZHNSZXNp
emUpCisgICAgICAgIGdsVmlld3BvcnQoMCwgMCwgdmlld3BvcnRTaXplLndpZHRoKCksIHZpZXdw
b3J0U2l6ZS5oZWlnaHQoKSk7CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCB2aWV3cG9ydFRy
YW5zZm9ybTsKLSAgICB2aWV3cG9ydFRyYW5zZm9ybS5zY2FsZShtX3NjYWxlRmFjdG9yKTsKLSAg
ICB2aWV3cG9ydFRyYW5zZm9ybS50cmFuc2xhdGUoLW1fc2Nyb2xsUG9zaXRpb24ueCgpLCAtbV9z
Y3JvbGxQb3NpdGlvbi55KCkpOworICAgIHZpZXdwb3J0VHJhbnNmb3JtLnNjYWxlKHNjYWxlRmFj
dG9yKTsKKyAgICB2aWV3cG9ydFRyYW5zZm9ybS50cmFuc2xhdGUoLXNjcm9sbFBvc2l0aW9uLngo
KSwgLXNjcm9sbFBvc2l0aW9uLnkoKSk7CiAKLSAgICBpZiAoIW1fZHJhd3NCYWNrZ3JvdW5kKSB7
CisgICAgaWYgKCFkcmF3c0JhY2tncm91bmQpIHsKICAgICAgICAgZ2xDbGVhckNvbG9yKDAsIDAs
IDAsIDApOwogICAgICAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQpOwogICAgIH0KIAot
ICAgIG1fc2NlbmUtPnBhaW50VG9DdXJyZW50R0xDb250ZXh0KHZpZXdwb3J0VHJhbnNmb3JtLCAx
LCBjbGlwUmVjdCwgQ29sb3I6OnRyYW5zcGFyZW50LCAhbV9kcmF3c0JhY2tncm91bmQsIG1fc2Ny
b2xsUG9zaXRpb24sIG1fcGFpbnRGbGFncyk7CisgICAgbV9zY2VuZS0+cGFpbnRUb0N1cnJlbnRH
TENvbnRleHQodmlld3BvcnRUcmFuc2Zvcm0sIDEsIEZsb2F0UmVjdCB7IEZsb2F0UG9pbnQgeyB9
LCB2aWV3cG9ydFNpemUgfSwKKyAgICAgICAgQ29sb3I6OnRyYW5zcGFyZW50LCAhZHJhd3NCYWNr
Z3JvdW5kLCBzY3JvbGxQb3NpdGlvbiwgbV9wYWludEZsYWdzKTsKIAogICAgIG1fY29udGV4dC0+
c3dhcEJ1ZmZlcnMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3NpdG9yL1RocmVhZGVkQ29tcG9zaXRvci5oIGIv
U291cmNlL1dlYktpdDIvU2hhcmVkL0Nvb3JkaW5hdGVkR3JhcGhpY3MvdGhyZWFkZWRjb21wb3Np
dG9yL1RocmVhZGVkQ29tcG9zaXRvci5oCmluZGV4IDk4YTM4ZTc1Zjc3MTA0YjI2ZDMzZDg1OTVk
ZjliYjFjMmM2YTA5NjIuLjUxNGNlMmQxOWVlODEzOWE1MGFhZjJhMDJiZWYxN2YzYTg2NDFlNmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db29yZGluYXRlZEdyYXBoaWNzL3Ro
cmVhZGVkY29tcG9zaXRvci9UaHJlYWRlZENvbXBvc2l0b3IuaAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvQ29vcmRpbmF0ZWRHcmFwaGljcy90aHJlYWRlZGNvbXBvc2l0b3IvVGhyZWFkZWRD
b21wb3NpdG9yLmgKQEAgLTExMiwxOCArMTEyLDIyIEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPENv
b3JkaW5hdGVkR3JhcGhpY3NTY2VuZT4gbV9zY2VuZTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2Vi
Q29yZTo6R0xDb250ZXh0PiBtX2NvbnRleHQ7CiAKLSAgICBXZWJDb3JlOjpJbnRTaXplIG1fdmll
d3BvcnRTaXplOwotICAgIFdlYkNvcmU6OkludFBvaW50IG1fc2Nyb2xsUG9zaXRpb247Ci0gICAg
ZmxvYXQgbV9zY2FsZUZhY3RvciB7IDEgfTsKLSAgICBib29sIG1fZHJhd3NCYWNrZ3JvdW5kIHsg
dHJ1ZSB9OwogICAgIHVpbnQ2NF90IG1fbmF0aXZlU3VyZmFjZUhhbmRsZTsKICAgICBTaG91bGRE
b0ZyYW1lU3luYyBtX2RvRnJhbWVTeW5jOwogICAgIFdlYkNvcmU6OlRleHR1cmVNYXBwZXI6OlBh
aW50RmxhZ3MgbV9wYWludEZsYWdzIHsgMCB9OwotICAgIGJvb2wgbV9uZWVkc1Jlc2l6ZSB7IGZh
bHNlIH07CiAgICAgYm9vbCBtX2luRm9yY2VSZXBhaW50IHsgZmFsc2UgfTsKIAogICAgIHN0ZDo6
dW5pcXVlX3B0cjxDb21wb3NpdGluZ1J1bkxvb3A+IG1fY29tcG9zaXRpbmdSdW5Mb29wOwogCisg
ICAgc3RydWN0IHsKKyAgICAgICAgTG9jayBsb2NrOworICAgICAgICBXZWJDb3JlOjpJbnRTaXpl
IHZpZXdwb3J0U2l6ZTsKKyAgICAgICAgV2ViQ29yZTo6SW50UG9pbnQgc2Nyb2xsUG9zaXRpb247
CisgICAgICAgIGZsb2F0IHNjYWxlRmFjdG9yIHsgMSB9OworICAgICAgICBib29sIGRyYXdzQmFj
a2dyb3VuZCB7IHRydWUgfTsKKyAgICAgICAgYm9vbCBuZWVkc1Jlc2l6ZSB7IGZhbHNlIH07Cisg
ICAgfSBtX2F0dHJpYnV0ZXM7CisKICNpZiBVU0UoUkVRVUVTVF9BTklNQVRJT05fRlJBTUVfRElT
UExBWV9NT05JVE9SKQogICAgIFJlZjxUaHJlYWRlZERpc3BsYXlSZWZyZXNoTW9uaXRvcj4gbV9k
aXNwbGF5UmVmcmVzaE1vbml0b3I7CiAjZW5kaWYK
</data>

          </attachment>
      

    </bug>

</bugzilla>