<?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>110415</bug_id>
          
          <creation_ts>2013-02-20 17:30:31 -0800</creation_ts>
          <short_desc>Provide WKView SPI to defer telling the WebPageProxy and WebProcess about changes in the hosting window</short_desc>
          <delta_ts>2013-02-20 19:53:37 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</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="Tim Horton">thorton</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>837987</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-02-20 17:30:31 -0800</bug_when>
    <thetext>Sometimes, we want to move a WKView around in the hierarchy.

Right now, if you remove a WKView and readd it elsewhere, you&apos;re likely to see a flash of white due to the asynchronous nature of the messages to the WebProcess (when a WebProcess is moved out-of-window, the TileCache unparents its tiles, among other things).

We should provide a way to say &quot;hang on a second, I might re-add you to the same window in a bit&quot;.

I want to do this by simply providing a begin/end pair on WKView that - if you&apos;re inside a pair - we don&apos;t send WebPageProxy a viewStateDidChange with the ViewIsInWindow flag until you leave the last pair.

&lt;rdar://problem/13095405&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>837995</commentid>
    <comment_count>1</comment_count>
      <attachid>189425</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-02-20 17:35:53 -0800</bug_when>
    <thetext>Created attachment 189425
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>838031</commentid>
    <comment_count>2</comment_count>
      <attachid>189425</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-20 18:09:20 -0800</bug_when>
    <thetext>Comment on attachment 189425
patch

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

Let&apos;s try some new names.

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:211
&gt; +    unsigned _windowChangesDeferredCount;

viewInWindowDeferredCount?

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:1907
&gt; +        if ([self windowChangesDeferred]) {
&gt; +            _data-&gt;_page-&gt;viewStateDidChange(WebPageProxy::ViewIsVisible);
&gt; +            _data-&gt;_windowChangeWasDeferred = YES;

The naming makes this confusing. It&apos;s easy to think that -windowChangesDeferred would return data-&gt;_windowChangeWasDeferred.

&gt; Source/WebKit2/UIProcess/API/mac/WKViewPrivate.h:60
&gt; +- (BOOL)windowChangesDeferred;

How about:

-beginDeferringViewInWindowChanges
-endDeferringViewInWindowChanges
-shouldDeferViewInWindowChanges</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>838070</commentid>
    <comment_count>3</comment_count>
      <attachid>189444</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-02-20 18:56:29 -0800</bug_when>
    <thetext>Created attachment 189444
new names</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>838108</commentid>
    <comment_count>4</comment_count>
      <attachid>189444</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-20 19:49:29 -0800</bug_when>
    <thetext>Comment on attachment 189444
new names

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

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:213
&gt; +    BOOL _windowChangeWasDeferred;

Want to rename this to &apos;viewInWindowChangeWasDeferred&apos;?

&gt; Source/WebKit2/UIProcess/API/mac/WKView.mm:3306
&gt; +    if (!(--_data-&gt;_viewInWindowChangesDeferredCount) &amp;&amp; _data-&gt;_windowChangeWasDeferred) {

Would be clearer to just hoist the --_data-&gt;_viewInWindowChangesDeferredCount outside the condition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>838110</commentid>
    <comment_count>5</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-02-20 19:53:37 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/143558</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189425</attachid>
            <date>2013-02-20 17:35:53 -0800</date>
            <delta_ts>2013-02-20 18:56:29 -0800</delta_ts>
            <desc>patch</desc>
            <filename>defer-window-changes.diff</filename>
            <type>text/plain</type>
            <size>4715</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBiYzc3ZWMyLi5hNDQ0MGRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTMtMDItMjAgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgUHJvdmlkZSBXS1ZpZXcgU1BJIHRvIGRlZmVyIHRlbGxpbmcgdGhlIFdlYlBhZ2VQ
cm94eSBhbmQgV2ViUHJvY2VzcyBhYm91dCBjaGFuZ2VzIGluIHRoZSBob3N0aW5nIHdpbmRvdwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNDE1Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMzA5NTQwNT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbTog
QWRkIF93aW5kb3dDaGFuZ2VzRGVmZXJyZWRDb3VudCBhbmQgX3dpbmRvd0NoYW5nZVdhc0RlZmVy
cmVkIHRvIFdLVmlld0RhdGEuCisgICAgICAgICgtW1dLVmlldyB2aWV3RGlkTW92ZVRvV2luZG93
XSk6IElmIHdlJ3JlIGRlZmVycmluZyB3aW5kb3cgY2hhbmdlcywgZG9uJ3QgaW5jbHVkZSB0aGUg
Vmlld0lzSW5XaW5kb3cgZmxhZworICAgICAgICB3aGVuIHNlbmRpbmcgdmlld1N0YXRlRGlkQ2hh
bmdlLiBJbnN0ZWFkLCBzYXZlIHRoZSBmYWN0IHRoYXQgd2Ugd2FudCB0byBkbyB0aGF0IGxhdGVy
IGFzaWRlLgorICAgICAgICAoLVtXS1ZpZXcgYmVnaW5EZWZlcnJpbmdXaW5kb3dDaGFuZ2VzXSk6
CisgICAgICAgICgtW1dLVmlldyBlbmREZWZlcnJpbmdXaW5kb3dDaGFuZ2VzXSk6IFN0cmFpZ2h0
Zm9yd2FyZCBiZWdpbi9lbmQgcGFpci4gV2hlbiB3ZSBleGl0IHRoZSBsYXN0IHBhaXIgYW5kCisg
ICAgICAgIGhhdmUgYSBwZW5kaW5nIHdpbmRvdyBjaGFuZ2UsIGxldCB0aGUgV2ViUGFnZVByb3h5
IGtub3cuIFdlYlBhZ2VQcm94eSB3aWxsIGRvIHRoZSBjaGVjayB0byBlbnN1cmUgdGhhdAorICAg
ICAgICB0aGUgaW4td2luZG93IHN0YXRlIGhhcyBhY3R1YWxseSBjaGFuZ2VkLgorICAgICAgICAo
LVtXS1ZpZXcgd2luZG93Q2hhbmdlc0RlZmVycmVkXSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9tYWMvV0tWaWV3UHJpdmF0ZS5oOiAKKwogMjAxMy0wMi0yMCAgSHVhbmcgRG9uZ3N1bmcgIDxs
dXh0ZWxsYUBjb21wYW55MTAwLm5ldD4KIAogICAgICAgICBbV0syXSBSZW1vdmUgbV92aWV3cG9y
dFNpemUgaW4gV2ViUGFnZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvbWFjL1dLVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmll
dy5tbQppbmRleCBkYzRmYjNjLi42ZDIwOGUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9tYWMvV0tWaWV3Lm1tCkBAIC0yMDgsNiArMjA4LDkgQEAgc3RydWN0IFdLVmlld0ludGVy
cHJldEtleUV2ZW50c1BhcmFtZXRlcnMgewogICAgIE5TUmVjdCBfd2luZG93Qm90dG9tQ29ybmVy
SW50ZXJzZWN0aW9uUmVjdDsKICAgICAKICAgICB1bnNpZ25lZCBfZnJhbWVTaXplVXBkYXRlc0Rp
c2FibGVkQ291bnQ7CisgICAgdW5zaWduZWQgX3dpbmRvd0NoYW5nZXNEZWZlcnJlZENvdW50Owor
CisgICAgQk9PTCBfd2luZG93Q2hhbmdlV2FzRGVmZXJyZWQ7CiAKICAgICAvLyBXaGV0aGVyIHRo
ZSBjb250YWluaW5nIHdpbmRvdyBvZiB0aGUgV0tWaWV3IGhhcyBhIHZhbGlkIGJhY2tpbmcgc3Rv
cmUuCiAgICAgLy8gVGhlIHdpbmRvdyBzZXJ2ZXIgaW52YWxpZGF0ZXMgdGhlIGJhY2tpbmcgc3Rv
cmUgd2hlbmV2ZXIgdGhlIHdpbmRvdyBpcyByZXNpemVkIG9yIG1pbmltaXplZC4KQEAgLTE4OTgs
NyArMTkwMSwxMyBAQCBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBiYWNraW5nUHJvcGVydHlPbGRT
Y2FsZUZhY3RvcktleSA9IEAiTlNCYWNraW5nUHJvcGVydHlPbAogICAgICAgICBfZGF0YS0+X3dp
bmRvd0hhc1ZhbGlkQmFja2luZ1N0b3JlID0gTk87CiAgICAgICAgIFtzZWxmIF91cGRhdGVXaW5k
b3dWaXNpYmlsaXR5XTsKICAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2Uo
V2ViUGFnZVByb3h5OjpWaWV3V2luZG93SXNBY3RpdmUpOwotICAgICAgICBfZGF0YS0+X3BhZ2Ut
PnZpZXdTdGF0ZURpZENoYW5nZShXZWJQYWdlUHJveHk6OlZpZXdJc1Zpc2libGUgfCBXZWJQYWdl
UHJveHk6OlZpZXdJc0luV2luZG93KTsKKworICAgICAgICBpZiAoW3NlbGYgd2luZG93Q2hhbmdl
c0RlZmVycmVkXSkgeworICAgICAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFu
Z2UoV2ViUGFnZVByb3h5OjpWaWV3SXNWaXNpYmxlKTsKKyAgICAgICAgICAgIF9kYXRhLT5fd2lu
ZG93Q2hhbmdlV2FzRGVmZXJyZWQgPSBZRVM7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAg
X2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVByb3h5OjpWaWV3SXNWaXNp
YmxlIHwgV2ViUGFnZVByb3h5OjpWaWV3SXNJbldpbmRvdyk7CisKICAgICAgICAgW3NlbGYgX3Vw
ZGF0ZVdpbmRvd0FuZFZpZXdGcmFtZXNdOwogCiAgICAgICAgIGlmICghX2RhdGEtPl9mbGFnc0No
YW5nZWRFdmVudE1vbml0b3IpIHsKQEAgLTE5MTIsNyArMTkyMSwxMiBAQCBzdGF0aWMgTlNTdHJp
bmcgKiBjb25zdCBiYWNraW5nUHJvcGVydHlPbGRTY2FsZUZhY3RvcktleSA9IEAiTlNCYWNraW5n
UHJvcGVydHlPbAogICAgIH0gZWxzZSB7CiAgICAgICAgIFtzZWxmIF91cGRhdGVXaW5kb3dWaXNp
YmlsaXR5XTsKICAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFn
ZVByb3h5OjpWaWV3SXNWaXNpYmxlKTsKLSAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVE
aWRDaGFuZ2UoV2ViUGFnZVByb3h5OjpWaWV3V2luZG93SXNBY3RpdmUgfCBXZWJQYWdlUHJveHk6
OlZpZXdJc0luV2luZG93KTsKKworICAgICAgICBpZiAoW3NlbGYgd2luZG93Q2hhbmdlc0RlZmVy
cmVkXSkgeworICAgICAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2Vi
UGFnZVByb3h5OjpWaWV3V2luZG93SXNBY3RpdmUpOworICAgICAgICAgICAgX2RhdGEtPl93aW5k
b3dDaGFuZ2VXYXNEZWZlcnJlZCA9IFlFUzsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBf
ZGF0YS0+X3BhZ2UtPnZpZXdTdGF0ZURpZENoYW5nZShXZWJQYWdlUHJveHk6OlZpZXdXaW5kb3dJ
c0FjdGl2ZSB8IFdlYlBhZ2VQcm94eTo6Vmlld0lzSW5XaW5kb3cpOwogCiAgICAgICAgIFtOU0V2
ZW50IHJlbW92ZU1vbml0b3I6X2RhdGEtPl9mbGFnc0NoYW5nZWRFdmVudE1vbml0b3JdOwogICAg
ICAgICBfZGF0YS0+X2ZsYWdzQ2hhbmdlZEV2ZW50TW9uaXRvciA9IG5pbDsKQEAgLTMyNzcsNiAr
MzI5MSwyOSBAQCBzdGF0aWMgTlNTdHJpbmcgKnBhdGhXaXRoVW5pcXVlRmlsZW5hbWVGb3JQYXRo
KE5TU3RyaW5nICpwYXRoKQogICAgIHJldHVybiBuaWw7CiB9CiAKKy0gKHZvaWQpYmVnaW5EZWZl
cnJpbmdXaW5kb3dDaGFuZ2VzCit7CisgICAgX2RhdGEtPl93aW5kb3dDaGFuZ2VzRGVmZXJyZWRD
b3VudCsrOworfQorCistICh2b2lkKWVuZERlZmVycmluZ1dpbmRvd0NoYW5nZXMKK3sKKyAgICBp
ZiAoIV9kYXRhLT5fd2luZG93Q2hhbmdlc0RlZmVycmVkQ291bnQpIHsKKyAgICAgICAgTlNMb2co
QCJlbmREZWZlcnJpbmdXaW5kb3dDaGFuZ2VzIHdhcyBjYWxsZWQgd2l0aG91dCBhIG1hdGNoaW5n
IGJlZ2luRGVmZXJyaW5nV2luZG93Q2hhbmdlcyEiKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KworICAgIGlmICghKC0tX2RhdGEtPl93aW5kb3dDaGFuZ2VzRGVmZXJyZWRDb3VudCkgJiYgX2Rh
dGEtPl93aW5kb3dDaGFuZ2VXYXNEZWZlcnJlZCkgeworICAgICAgICBfZGF0YS0+X3BhZ2UtPnZp
ZXdTdGF0ZURpZENoYW5nZShXZWJQYWdlUHJveHk6OlZpZXdJc0luV2luZG93KTsKKyAgICAgICAg
X2RhdGEtPl93aW5kb3dDaGFuZ2VXYXNEZWZlcnJlZCA9IE5POworICAgIH0KK30KKworLSAoQk9P
TCl3aW5kb3dDaGFuZ2VzRGVmZXJyZWQKK3sKKyAgICByZXR1cm4gX2RhdGEtPl93aW5kb3dDaGFu
Z2VzRGVmZXJyZWRDb3VudDsKK30KKwogQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV0tSZXNwb25k
ZXJDaGFpblNpbmsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFj
L1dLVmlld1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmll
d1ByaXZhdGUuaAppbmRleCBhYjE0NjgzLi5jNzQzMWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXdQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3UHJpdmF0ZS5oCkBAIC01NSw0ICs1NSw4IEBACiAK
IC0gKE5TVmlldyopZnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldzsKIAorLSAodm9pZCliZWdpbkRl
ZmVycmluZ1dpbmRvd0NoYW5nZXM7CistICh2b2lkKWVuZERlZmVycmluZ1dpbmRvd0NoYW5nZXM7
CistIChCT09MKXdpbmRvd0NoYW5nZXNEZWZlcnJlZDsKKwogQGVuZAo=
</data>
<flag name="review"
          id="209812"
          type_id="1"
          status="-"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189444</attachid>
            <date>2013-02-20 18:56:29 -0800</date>
            <delta_ts>2013-02-20 19:49:29 -0800</delta_ts>
            <desc>new names</desc>
            <filename>defer-window-changes.diff</filename>
            <type>text/plain</type>
            <size>4844</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBiYzc3ZWMyLi43ZDI5OTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTMtMDItMjAgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgUHJvdmlkZSBXS1ZpZXcgU1BJIHRvIGRlZmVyIHRlbGxpbmcgdGhlIFdlYlBhZ2VQ
cm94eSBhbmQgV2ViUHJvY2VzcyBhYm91dCBjaGFuZ2VzIGluIHRoZSBob3N0aW5nIHdpbmRvdwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNDE1Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMzA5NTQwNT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbTog
QWRkIF92aWV3SW5XaW5kb3dDaGFuZ2VzRGVmZXJyZWRDb3VudCBhbmQgX3dpbmRvd0NoYW5nZVdh
c0RlZmVycmVkIHRvIFdLVmlld0RhdGEuCisgICAgICAgICgtW1dLVmlldyB2aWV3RGlkTW92ZVRv
V2luZG93XSk6IElmIHdlJ3JlIGRlZmVycmluZyB3aW5kb3cgY2hhbmdlcywgZG9uJ3QgaW5jbHVk
ZSB0aGUgVmlld0lzSW5XaW5kb3cgZmxhZworICAgICAgICB3aGVuIHNlbmRpbmcgdmlld1N0YXRl
RGlkQ2hhbmdlLiBJbnN0ZWFkLCBzYXZlIHRoZSBmYWN0IHRoYXQgd2Ugd2FudCB0byBkbyB0aGF0
IGxhdGVyIGFzaWRlLgorICAgICAgICAoLVtXS1ZpZXcgYmVnaW5EZWZlcnJpbmdWaWV3SW5XaW5k
b3dDaGFuZ2VzXSk6CisgICAgICAgICgtW1dLVmlldyBlbmREZWZlcnJpbmdWaWV3SW5XaW5kb3dD
aGFuZ2VzXSk6IFN0cmFpZ2h0Zm9yd2FyZCBiZWdpbi9lbmQgcGFpci4gV2hlbiB3ZSBleGl0IHRo
ZSBsYXN0IHBhaXIgYW5kCisgICAgICAgIGhhdmUgYSBwZW5kaW5nIHdpbmRvdyBjaGFuZ2UsIGxl
dCB0aGUgV2ViUGFnZVByb3h5IGtub3cuIFdlYlBhZ2VQcm94eSB3aWxsIGRvIHRoZSBjaGVjayB0
byBlbnN1cmUgdGhhdAorICAgICAgICB0aGUgaW4td2luZG93IHN0YXRlIGhhcyBhY3R1YWxseSBj
aGFuZ2VkLgorICAgICAgICAoLVtXS1ZpZXcgaXNEZWZlcnJpbmdWaWV3SW5XaW5kb3dDaGFuZ2Vz
XSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3UHJpdmF0ZS5oOiAKKwogMjAx
My0wMi0yMCAgSHVhbmcgRG9uZ3N1bmcgIDxsdXh0ZWxsYUBjb21wYW55MTAwLm5ldD4KIAogICAg
ICAgICBbV0syXSBSZW1vdmUgbV92aWV3cG9ydFNpemUgaW4gV2ViUGFnZS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbSBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQppbmRleCBkYzRmYjNjLi42Y2UxNzNlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCkBAIC0yMDgsNiAr
MjA4LDkgQEAgc3RydWN0IFdLVmlld0ludGVycHJldEtleUV2ZW50c1BhcmFtZXRlcnMgewogICAg
IE5TUmVjdCBfd2luZG93Qm90dG9tQ29ybmVySW50ZXJzZWN0aW9uUmVjdDsKICAgICAKICAgICB1
bnNpZ25lZCBfZnJhbWVTaXplVXBkYXRlc0Rpc2FibGVkQ291bnQ7CisgICAgdW5zaWduZWQgX3Zp
ZXdJbldpbmRvd0NoYW5nZXNEZWZlcnJlZENvdW50OworCisgICAgQk9PTCBfd2luZG93Q2hhbmdl
V2FzRGVmZXJyZWQ7CiAKICAgICAvLyBXaGV0aGVyIHRoZSBjb250YWluaW5nIHdpbmRvdyBvZiB0
aGUgV0tWaWV3IGhhcyBhIHZhbGlkIGJhY2tpbmcgc3RvcmUuCiAgICAgLy8gVGhlIHdpbmRvdyBz
ZXJ2ZXIgaW52YWxpZGF0ZXMgdGhlIGJhY2tpbmcgc3RvcmUgd2hlbmV2ZXIgdGhlIHdpbmRvdyBp
cyByZXNpemVkIG9yIG1pbmltaXplZC4KQEAgLTE4OTgsNyArMTkwMSwxMyBAQCBzdGF0aWMgTlNT
dHJpbmcgKiBjb25zdCBiYWNraW5nUHJvcGVydHlPbGRTY2FsZUZhY3RvcktleSA9IEAiTlNCYWNr
aW5nUHJvcGVydHlPbAogICAgICAgICBfZGF0YS0+X3dpbmRvd0hhc1ZhbGlkQmFja2luZ1N0b3Jl
ID0gTk87CiAgICAgICAgIFtzZWxmIF91cGRhdGVXaW5kb3dWaXNpYmlsaXR5XTsKICAgICAgICAg
X2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVByb3h5OjpWaWV3V2luZG93
SXNBY3RpdmUpOwotICAgICAgICBfZGF0YS0+X3BhZ2UtPnZpZXdTdGF0ZURpZENoYW5nZShXZWJQ
YWdlUHJveHk6OlZpZXdJc1Zpc2libGUgfCBXZWJQYWdlUHJveHk6OlZpZXdJc0luV2luZG93KTsK
KworICAgICAgICBpZiAoW3NlbGYgaXNEZWZlcnJpbmdWaWV3SW5XaW5kb3dDaGFuZ2VzXSkgewor
ICAgICAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVByb3h5
OjpWaWV3SXNWaXNpYmxlKTsKKyAgICAgICAgICAgIF9kYXRhLT5fd2luZG93Q2hhbmdlV2FzRGVm
ZXJyZWQgPSBZRVM7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgX2RhdGEtPl9wYWdlLT52
aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVByb3h5OjpWaWV3SXNWaXNpYmxlIHwgV2ViUGFnZVBy
b3h5OjpWaWV3SXNJbldpbmRvdyk7CisKICAgICAgICAgW3NlbGYgX3VwZGF0ZVdpbmRvd0FuZFZp
ZXdGcmFtZXNdOwogCiAgICAgICAgIGlmICghX2RhdGEtPl9mbGFnc0NoYW5nZWRFdmVudE1vbml0
b3IpIHsKQEAgLTE5MTIsNyArMTkyMSwxMiBAQCBzdGF0aWMgTlNTdHJpbmcgKiBjb25zdCBiYWNr
aW5nUHJvcGVydHlPbGRTY2FsZUZhY3RvcktleSA9IEAiTlNCYWNraW5nUHJvcGVydHlPbAogICAg
IH0gZWxzZSB7CiAgICAgICAgIFtzZWxmIF91cGRhdGVXaW5kb3dWaXNpYmlsaXR5XTsKICAgICAg
ICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVByb3h5OjpWaWV3SXNW
aXNpYmxlKTsKLSAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFn
ZVByb3h5OjpWaWV3V2luZG93SXNBY3RpdmUgfCBXZWJQYWdlUHJveHk6OlZpZXdJc0luV2luZG93
KTsKKworICAgICAgICBpZiAoW3NlbGYgaXNEZWZlcnJpbmdWaWV3SW5XaW5kb3dDaGFuZ2VzXSkg
eworICAgICAgICAgICAgX2RhdGEtPl9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVBy
b3h5OjpWaWV3V2luZG93SXNBY3RpdmUpOworICAgICAgICAgICAgX2RhdGEtPl93aW5kb3dDaGFu
Z2VXYXNEZWZlcnJlZCA9IFlFUzsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBfZGF0YS0+
X3BhZ2UtPnZpZXdTdGF0ZURpZENoYW5nZShXZWJQYWdlUHJveHk6OlZpZXdXaW5kb3dJc0FjdGl2
ZSB8IFdlYlBhZ2VQcm94eTo6Vmlld0lzSW5XaW5kb3cpOwogCiAgICAgICAgIFtOU0V2ZW50IHJl
bW92ZU1vbml0b3I6X2RhdGEtPl9mbGFnc0NoYW5nZWRFdmVudE1vbml0b3JdOwogICAgICAgICBf
ZGF0YS0+X2ZsYWdzQ2hhbmdlZEV2ZW50TW9uaXRvciA9IG5pbDsKQEAgLTMyNzcsNiArMzI5MSwy
OSBAQCBzdGF0aWMgTlNTdHJpbmcgKnBhdGhXaXRoVW5pcXVlRmlsZW5hbWVGb3JQYXRoKE5TU3Ry
aW5nICpwYXRoKQogICAgIHJldHVybiBuaWw7CiB9CiAKKy0gKHZvaWQpYmVnaW5EZWZlcnJpbmdW
aWV3SW5XaW5kb3dDaGFuZ2VzCit7CisgICAgX2RhdGEtPl92aWV3SW5XaW5kb3dDaGFuZ2VzRGVm
ZXJyZWRDb3VudCsrOworfQorCistICh2b2lkKWVuZERlZmVycmluZ1ZpZXdJbldpbmRvd0NoYW5n
ZXMKK3sKKyAgICBpZiAoIV9kYXRhLT5fdmlld0luV2luZG93Q2hhbmdlc0RlZmVycmVkQ291bnQp
IHsKKyAgICAgICAgTlNMb2coQCJlbmREZWZlcnJpbmdWaWV3SW5XaW5kb3dDaGFuZ2VzIHdhcyBj
YWxsZWQgd2l0aG91dCBhIG1hdGNoaW5nIGJlZ2luRGVmZXJyaW5nVmlld0luV2luZG93Q2hhbmdl
cyEiKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmICghKC0tX2RhdGEtPl92aWV3
SW5XaW5kb3dDaGFuZ2VzRGVmZXJyZWRDb3VudCkgJiYgX2RhdGEtPl93aW5kb3dDaGFuZ2VXYXNE
ZWZlcnJlZCkgeworICAgICAgICBfZGF0YS0+X3BhZ2UtPnZpZXdTdGF0ZURpZENoYW5nZShXZWJQ
YWdlUHJveHk6OlZpZXdJc0luV2luZG93KTsKKyAgICAgICAgX2RhdGEtPl93aW5kb3dDaGFuZ2VX
YXNEZWZlcnJlZCA9IE5POworICAgIH0KK30KKworLSAoQk9PTClpc0RlZmVycmluZ1ZpZXdJbldp
bmRvd0NoYW5nZXMKK3sKKyAgICByZXR1cm4gX2RhdGEtPl92aWV3SW5XaW5kb3dDaGFuZ2VzRGVm
ZXJyZWRDb3VudDsKK30KKwogQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV0tSZXNwb25kZXJDaGFp
blNpbmsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmll
d1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlld1ByaXZh
dGUuaAppbmRleCBhYjE0NjgzLi5mNjNkYWRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL21hYy9XS1ZpZXdQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9tYWMvV0tWaWV3UHJpdmF0ZS5oCkBAIC01NSw0ICs1NSw4IEBACiAKIC0gKE5T
VmlldyopZnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldzsKIAorLSAodm9pZCliZWdpbkRlZmVycmlu
Z1ZpZXdJbldpbmRvd0NoYW5nZXM7CistICh2b2lkKWVuZERlZmVycmluZ1ZpZXdJbldpbmRvd0No
YW5nZXM7CistIChCT09MKWlzRGVmZXJyaW5nVmlld0luV2luZG93Q2hhbmdlczsKKwogQGVuZAo=
</data>
<flag name="review"
          id="209842"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>