<?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>141907</bug_id>
          
          <creation_ts>2015-02-23 08:23:41 -0800</creation_ts>
          <short_desc>[WK2][Mac] WebPageProxy::supressVisibilityUpdates() should suppress visibility updates.</short_desc>
          <delta_ts>2015-03-02 09:39:35 -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>New Bugs</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1071201</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-02-23 08:23:41 -0800</bug_when>
    <thetext>[WK2][Mac] WebPageProxy::supressVisibilityUpdates() should suppress visibility updates.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071202</commentid>
    <comment_count>1</comment_count>
      <attachid>247118</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-02-23 08:31:00 -0800</bug_when>
    <thetext>Created attachment 247118
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071293</commentid>
    <comment_count>2</comment_count>
      <attachid>247136</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-02-23 12:52:52 -0800</bug_when>
    <thetext>Created attachment 247136
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071296</commentid>
    <comment_count>3</comment_count>
      <attachid>247136</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-02-23 13:04:40 -0800</bug_when>
    <thetext>Comment on attachment 247136
Patch

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

&gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1231
&gt; +        m_viewStateChangeDispatcher-&gt;schedule();

If one of the suppressed changes was a view-in-window change or any of the requests requested immediate dispatch, you should probably do that here instead of waiting for the next runloop.

&gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1262
&gt; +    if (m_suppressVisibilityUpdates)

It is super dangerous for any viewStateDidChange call that wantsSynchronousReply or immediate dispatch to bail like this, because often the caller will be blocking waiting for a reply that won&apos;t come.

You should add an assert or logging or something here. Or something? It&apos;s just scary and has caused lots of trouble in the past.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072119</commentid>
    <comment_count>4</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-02-25 13:40:54 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 247136 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=247136&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1231
&gt; &gt; +        m_viewStateChangeDispatcher-&gt;schedule();
&gt; 
&gt; If one of the suppressed changes was a view-in-window change or any of the
&gt; requests requested immediate dispatch, you should probably do that here
&gt; instead of waiting for the next runloop.

Well, the immediate dispatch thing should never happen if we add an ASSERT, as you suggest below.  But why should we do the view-in-window change immediately? It&apos;s already been delayed; what&apos;s wrong with delaying a bit longer?

&gt; &gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1262
&gt; &gt; +    if (m_suppressVisibilityUpdates)
&gt; 
&gt; It is super dangerous for any viewStateDidChange call that
&gt; wantsSynchronousReply or immediate dispatch to bail like this, because often
&gt; the caller will be blocking waiting for a reply that won&apos;t come.
&gt; 
&gt; You should add an assert or logging or something here. Or something? It&apos;s
&gt; just scary and has caused lots of trouble in the past.

Ok, lets add an ASSERT. From looking at all the call points, this should never get hit, but better safe than sorry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072128</commentid>
    <comment_count>5</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-02-25 13:49:55 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Comment on attachment 247136 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=247136&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1231
&gt; &gt; &gt; +        m_viewStateChangeDispatcher-&gt;schedule();
&gt; &gt; 
&gt; &gt; If one of the suppressed changes was a view-in-window change or any of the
&gt; &gt; requests requested immediate dispatch, you should probably do that here
&gt; &gt; instead of waiting for the next runloop.
&gt; 
&gt; Well, the immediate dispatch thing should never happen if we add an ASSERT,
&gt; as you suggest below.  But why should we do the view-in-window change
&gt; immediately? It&apos;s already been delayed; what&apos;s wrong with delaying a bit
&gt; longer?
&gt; 
&gt; &gt; &gt; Source/WebKit2/UIProcess/WebPageProxy.cpp:1262
&gt; &gt; &gt; +    if (m_suppressVisibilityUpdates)
&gt; &gt; 
&gt; &gt; It is super dangerous for any viewStateDidChange call that
&gt; &gt; wantsSynchronousReply or immediate dispatch to bail like this, because often
&gt; &gt; the caller will be blocking waiting for a reply that won&apos;t come.
&gt; &gt; 
&gt; &gt; You should add an assert or logging or something here. Or something? It&apos;s
&gt; &gt; just scary and has caused lots of trouble in the past.
&gt; 
&gt; Ok, lets add an ASSERT. From looking at all the call points, this should
&gt; never get hit, but better safe than sorry.

Actually, looking at all the call sites, I think it would be safe here to just ignore the m_suppressVisibilityUpdates flag if immediate dispatch is requested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072129</commentid>
    <comment_count>6</comment_count>
      <attachid>247343</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2015-02-25 13:54:11 -0800</bug_when>
    <thetext>Created attachment 247343
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073350</commentid>
    <comment_count>7</comment_count>
      <attachid>247343</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-02 09:39:31 -0800</bug_when>
    <thetext>Comment on attachment 247343
Patch

Clearing flags on attachment: 247343

Committed r180886: &lt;http://trac.webkit.org/changeset/180886&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073351</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-02 09:39:35 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247118</attachid>
            <date>2015-02-23 08:31:00 -0800</date>
            <delta_ts>2015-02-23 12:52:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141907-20150223083050.patch</filename>
            <type>text/plain</type>
            <size>3704</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMDMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTEyNTAyNTM5NDMzZjgw
NzZiOTA0YzEyODBhNzk3OGIyMjE1NTk0Zi4uOWI0ODBiOGJjMzU1MDhhYzM0NGJlMTRjMDEzMDBh
OTFkNGU0ODFiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE1LTAyLTIzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtXSzJdW01hY10gV2ViUGFn
ZVByb3h5OjpzdXByZXNzVmlzaWJpbGl0eVVwZGF0ZXMoKSBzaG91bGQgc3VwcHJlc3MgdmlzaWJp
bGl0eSB1cGRhdGVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQxOTA3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQXQgc29tZSBwb2ludCwgdGhlIHdpbmRvdy92aWV3L3BhZ2UgdmlzaWJpbGl0eSB1cGRh
dGUgY29kZSB3YXMgcmVmYWN0b3JlZCBzdWNoIHRoYXQgc2V0dGluZworICAgICAgICBXZWJQYWdl
UHJveHk6OnNldFN1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZSgpIG5vIGxvbmdlciBzdXBwcmVzc2Vk
IHZpc2liaWxpdHkgdXBkYXRlcy4gVGhpcyBjYXVzZXMKKyAgICAgICAgZnVsbCBzY3JlZW4gYW5p
bWF0aW9ucyB0byBiZWNvbWUgImZsYXNoeSIgd2hlbiBtb3ZpbmcgdGhlIFdlYlZpZXcgYmV0d2Vl
biB0aGUgcmVndWxhciBhbmQgZnVsbAorICAgICAgICBzY3JlZW4gd2luZG93LCBhcyBhIEhUTUxN
ZWRpYUVsZW1lbnQgaW4gdGhlIGZ1bGwgc2NyZWVuIGFuaW1hdGlvbiB3aWxsIHJlY2VpdmUgYSAi
IXZpc2libGUiCisgICAgICAgIG5vdGlmaWNhdGlvbiBhbmQgZGlzY29ubmVjdCBpdHMgcmVuZGVy
aW5nIHBpcGVsaW5lLgorCisgICAgICAgIEluIFdlYlBhZ2VQcm94eTo6dmlld1N0YXRlRGlkQ2hh
bmdlKCksIHJlc3BlY3QgbV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzIGFuZCBiYWlsIG91dCBl
YXJseQorICAgICAgICBpZiBzZXQuIEluIFdlYlBhZ2VQcm94eTo6c2V0U3VwcHJlc3NWaXNpYmls
aXR5VXBkYXRlcygpLCB0cmlnZ2VyIGFuIGV4cGxpY2l0IHVwZGF0ZSBhZnRlcgorICAgICAgICBj
bGVhcmluZyBtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMuCisKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpzZXRT
dXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
Ojp2aWV3U3RhdGVEaWRDaGFuZ2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHku
aDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpzZXRTdXBwcmVzc1Zpc2liaWxpdHlV
cGRhdGVzKTogRGVsZXRlZC4KKwogMjAxNS0wMi0xMiAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9y
dG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBDcmFzaCB1bmRlciBSZW1vdGVMYXllclRyZWVEcmF3
aW5nQXJlYTo6Zmx1c2hMYXllcnMoKSB3aGVuIGNsb3NpbmcgYSB0YWIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggYTg0YTNmYTIyMmVhYjg4MDBkMDMzYThk
NzI0MTE4MTQ4NjkxZjM2Yy4uYzI0MDg2YzQ3OGYyZjBjNjY1NzEyY2Q5YzQ2N2VjNDc3NzA4YTQ1
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTEyMjAs
NiArMTIyMCwxNiBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFNjcm9sbChjb25zdCBGbG9h
dFBvaW50JiBzY3JvbGxQb3NpdGlvbiwgYm9vbCBpc1Byb2dyYQogICAgIG1fcGFnZUNsaWVudC5y
ZXF1ZXN0U2Nyb2xsKHNjcm9sbFBvc2l0aW9uLCBpc1Byb2dyYW1tYXRpY1Njcm9sbCk7CiB9CiAK
K3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRTdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKGJvb2wgZmxh
ZykKK3sKKyAgICBpZiAobV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzID09IGZsYWcpCisgICAg
ICAgIHJldHVybjsKKyAgICBtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMgPSBmbGFnOworCisg
ICAgaWYgKCFtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMpCisgICAgICAgIG1fdmlld1N0YXRl
Q2hhbmdlRGlzcGF0Y2hlci0+c2NoZWR1bGUoKTsKK30KKwogdm9pZCBXZWJQYWdlUHJveHk6OnVw
ZGF0ZVZpZXdTdGF0ZShWaWV3U3RhdGU6OkZsYWdzIGZsYWdzVG9VcGRhdGUpCiB7CiAgICAgbV92
aWV3U3RhdGUgJj0gfmZsYWdzVG9VcGRhdGU7CkBAIC0xMjQ0LDYgKzEyNTQsOSBAQCB2b2lkIFdl
YlBhZ2VQcm94eTo6dmlld1N0YXRlRGlkQ2hhbmdlKFZpZXdTdGF0ZTo6RmxhZ3MgbWF5SGF2ZUNo
YW5nZWQsIGJvb2wgd2FudAogICAgIG1fcG90ZW50aWFsbHlDaGFuZ2VkVmlld1N0YXRlRmxhZ3Mg
fD0gbWF5SGF2ZUNoYW5nZWQ7CiAgICAgbV92aWV3U3RhdGVDaGFuZ2VXYW50c1N5bmNocm9ub3Vz
UmVwbHkgPSBtX3ZpZXdTdGF0ZUNoYW5nZVdhbnRzU3luY2hyb25vdXNSZXBseSB8fCB3YW50c1N5
bmNocm9ub3VzUmVwbHk7CiAKKyAgICBpZiAobV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKQor
ICAgICAgICByZXR1cm47CisKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBib29sIGlzTmV3bHlJ
bldpbmRvdyA9ICFpc0luV2luZG93KCkgJiYgKG1heUhhdmVDaGFuZ2VkICYgVmlld1N0YXRlOjpJ
c0luV2luZG93KSAmJiBtX3BhZ2VDbGllbnQuaXNWaWV3SW5XaW5kb3coKTsKICAgICBpZiAoZGlz
cGF0Y2hNb2RlID09IFZpZXdTdGF0ZUNoYW5nZURpc3BhdGNoTW9kZTo6SW1tZWRpYXRlIHx8IGlz
TmV3bHlJbldpbmRvdykgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmlu
ZGV4IGM5MmNhODliYTBkNmQ4ZTZiNzJkYTFlNDFjY2NlMzAyZjU2MzBlOWMuLmE1YWZjMzY0MTY2
NWFiNzMxYWRiMTljNWE0ZGQxNDJlZTNhNmQ0MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmgKQEAgLTg5MCw3ICs4OTAsNyBAQCBwdWJsaWM6CiAgICAgLy8gV2ViUG9w
dXBNZW51UHJveHk6OkNsaWVudAogICAgIHZpcnR1YWwgTmF0aXZlV2ViTW91c2VFdmVudCogY3Vy
cmVudGx5UHJvY2Vzc2VkTW91c2VEb3duRXZlbnQoKSBvdmVycmlkZTsKIAotICAgIHZvaWQgc2V0
U3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcyhib29sIGZsYWcpIHsgbV9zdXBwcmVzc1Zpc2liaWxp
dHlVcGRhdGVzID0gZmxhZzsgfQorICAgIHZvaWQgc2V0U3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRl
cyhib29sIGZsYWcpOwogICAgIGJvb2wgc3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcygpIHsgcmV0
dXJuIG1fc3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlczsgfQogCiAjaWYgUExBVEZPUk0oSU9TKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247136</attachid>
            <date>2015-02-23 12:52:52 -0800</date>
            <delta_ts>2015-02-25 13:54:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141907-20150223125241.patch</filename>
            <type>text/plain</type>
            <size>3785</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMDMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTEyNTAyNTM5NDMzZjgw
NzZiOTA0YzEyODBhNzk3OGIyMjE1NTk0Zi4uOWI0ODBiOGJjMzU1MDhhYzM0NGJlMTRjMDEzMDBh
OTFkNGU0ODFiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE1LTAyLTIzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtXSzJdW01hY10gV2ViUGFn
ZVByb3h5OjpzdXByZXNzVmlzaWJpbGl0eVVwZGF0ZXMoKSBzaG91bGQgc3VwcHJlc3MgdmlzaWJp
bGl0eSB1cGRhdGVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQxOTA3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQXQgc29tZSBwb2ludCwgdGhlIHdpbmRvdy92aWV3L3BhZ2UgdmlzaWJpbGl0eSB1cGRh
dGUgY29kZSB3YXMgcmVmYWN0b3JlZCBzdWNoIHRoYXQgc2V0dGluZworICAgICAgICBXZWJQYWdl
UHJveHk6OnNldFN1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZSgpIG5vIGxvbmdlciBzdXBwcmVzc2Vk
IHZpc2liaWxpdHkgdXBkYXRlcy4gVGhpcyBjYXVzZXMKKyAgICAgICAgZnVsbCBzY3JlZW4gYW5p
bWF0aW9ucyB0byBiZWNvbWUgImZsYXNoeSIgd2hlbiBtb3ZpbmcgdGhlIFdlYlZpZXcgYmV0d2Vl
biB0aGUgcmVndWxhciBhbmQgZnVsbAorICAgICAgICBzY3JlZW4gd2luZG93LCBhcyBhIEhUTUxN
ZWRpYUVsZW1lbnQgaW4gdGhlIGZ1bGwgc2NyZWVuIGFuaW1hdGlvbiB3aWxsIHJlY2VpdmUgYSAi
IXZpc2libGUiCisgICAgICAgIG5vdGlmaWNhdGlvbiBhbmQgZGlzY29ubmVjdCBpdHMgcmVuZGVy
aW5nIHBpcGVsaW5lLgorCisgICAgICAgIEluIFdlYlBhZ2VQcm94eTo6dmlld1N0YXRlRGlkQ2hh
bmdlKCksIHJlc3BlY3QgbV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzIGFuZCBiYWlsIG91dCBl
YXJseQorICAgICAgICBpZiBzZXQuIEluIFdlYlBhZ2VQcm94eTo6c2V0U3VwcHJlc3NWaXNpYmls
aXR5VXBkYXRlcygpLCB0cmlnZ2VyIGFuIGV4cGxpY2l0IHVwZGF0ZSBhZnRlcgorICAgICAgICBj
bGVhcmluZyBtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMuCisKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpzZXRT
dXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
Ojp2aWV3U3RhdGVEaWRDaGFuZ2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHku
aDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpzZXRTdXBwcmVzc1Zpc2liaWxpdHlV
cGRhdGVzKTogRGVsZXRlZC4KKwogMjAxNS0wMi0xMiAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9y
dG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBDcmFzaCB1bmRlciBSZW1vdGVMYXllclRyZWVEcmF3
aW5nQXJlYTo6Zmx1c2hMYXllcnMoKSB3aGVuIGNsb3NpbmcgYSB0YWIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggYTg0YTNmYTIyMmVhYjg4MDBkMDMzYThk
NzI0MTE4MTQ4NjkxZjM2Yy4uNDI5ZDQ5YmM3ZTMyNDYzNjc3ZGU2ODYwMzRhMTlmMWMzY2ZiNDIw
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTEyMjAs
NiArMTIyMCwyMSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFNjcm9sbChjb25zdCBGbG9h
dFBvaW50JiBzY3JvbGxQb3NpdGlvbiwgYm9vbCBpc1Byb2dyYQogICAgIG1fcGFnZUNsaWVudC5y
ZXF1ZXN0U2Nyb2xsKHNjcm9sbFBvc2l0aW9uLCBpc1Byb2dyYW1tYXRpY1Njcm9sbCk7CiB9CiAK
K3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRTdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKGJvb2wgZmxh
ZykKK3sKKyAgICBpZiAobV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzID09IGZsYWcpCisgICAg
ICAgIHJldHVybjsKKyAgICBtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMgPSBmbGFnOworCisg
ICAgaWYgKCFtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMpIHsKKyNpZiBQTEFURk9STShDT0NP
QSkKKyAgICAgICAgbV92aWV3U3RhdGVDaGFuZ2VEaXNwYXRjaGVyLT5zY2hlZHVsZSgpOworI2Vs
c2UKKyAgICAgICAgZGlzcGF0Y2hWaWV3U3RhdGVDaGFuZ2UoKTsKKyNlbmRpZgorICAgIH0KK30K
Kwogdm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZVZpZXdTdGF0ZShWaWV3U3RhdGU6OkZsYWdzIGZs
YWdzVG9VcGRhdGUpCiB7CiAgICAgbV92aWV3U3RhdGUgJj0gfmZsYWdzVG9VcGRhdGU7CkBAIC0x
MjQ0LDYgKzEyNTksOSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6dmlld1N0YXRlRGlkQ2hhbmdlKFZp
ZXdTdGF0ZTo6RmxhZ3MgbWF5SGF2ZUNoYW5nZWQsIGJvb2wgd2FudAogICAgIG1fcG90ZW50aWFs
bHlDaGFuZ2VkVmlld1N0YXRlRmxhZ3MgfD0gbWF5SGF2ZUNoYW5nZWQ7CiAgICAgbV92aWV3U3Rh
dGVDaGFuZ2VXYW50c1N5bmNocm9ub3VzUmVwbHkgPSBtX3ZpZXdTdGF0ZUNoYW5nZVdhbnRzU3lu
Y2hyb25vdXNSZXBseSB8fCB3YW50c1N5bmNocm9ub3VzUmVwbHk7CiAKKyAgICBpZiAobV9zdXBw
cmVzc1Zpc2liaWxpdHlVcGRhdGVzKQorICAgICAgICByZXR1cm47CisKICNpZiBQTEFURk9STShD
T0NPQSkKICAgICBib29sIGlzTmV3bHlJbldpbmRvdyA9ICFpc0luV2luZG93KCkgJiYgKG1heUhh
dmVDaGFuZ2VkICYgVmlld1N0YXRlOjpJc0luV2luZG93KSAmJiBtX3BhZ2VDbGllbnQuaXNWaWV3
SW5XaW5kb3coKTsKICAgICBpZiAoZGlzcGF0Y2hNb2RlID09IFZpZXdTdGF0ZUNoYW5nZURpc3Bh
dGNoTW9kZTo6SW1tZWRpYXRlIHx8IGlzTmV3bHlJbldpbmRvdykgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IGM5MmNhODliYTBkNmQ4ZTZiNzJkYTFlNDFjY2Nl
MzAyZjU2MzBlOWMuLmE1YWZjMzY0MTY2NWFiNzMxYWRiMTljNWE0ZGQxNDJlZTNhNmQ0MmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTg5MCw3ICs4OTAsNyBA
QCBwdWJsaWM6CiAgICAgLy8gV2ViUG9wdXBNZW51UHJveHk6OkNsaWVudAogICAgIHZpcnR1YWwg
TmF0aXZlV2ViTW91c2VFdmVudCogY3VycmVudGx5UHJvY2Vzc2VkTW91c2VEb3duRXZlbnQoKSBv
dmVycmlkZTsKIAotICAgIHZvaWQgc2V0U3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcyhib29sIGZs
YWcpIHsgbV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzID0gZmxhZzsgfQorICAgIHZvaWQgc2V0
U3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcyhib29sIGZsYWcpOwogICAgIGJvb2wgc3VwcHJlc3NW
aXNpYmlsaXR5VXBkYXRlcygpIHsgcmV0dXJuIG1fc3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlczsg
fQogCiAjaWYgUExBVEZPUk0oSU9TKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247343</attachid>
            <date>2015-02-25 13:54:11 -0800</date>
            <delta_ts>2015-03-02 09:39:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141907-20150225135358.patch</filename>
            <type>text/plain</type>
            <size>3834</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZjllNDMwNGY0NmJjODA0
MmRjYjAwOTFjMzI2OWMzN2Q5NDE3MmNjMi4uZTM1MWFmY2Q1MTg1ZjhmOWIxNjUzYjcxY2Y5YzBi
YWJjOWYwZmQ4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE1LTAyLTIzICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtXSzJdW01hY10gV2ViUGFn
ZVByb3h5OjpzdXByZXNzVmlzaWJpbGl0eVVwZGF0ZXMoKSBzaG91bGQgc3VwcHJlc3MgdmlzaWJp
bGl0eSB1cGRhdGVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQxOTA3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQXQgc29tZSBwb2ludCwgdGhlIHdpbmRvdy92aWV3L3BhZ2UgdmlzaWJpbGl0eSB1cGRh
dGUgY29kZSB3YXMgcmVmYWN0b3JlZCBzdWNoIHRoYXQgc2V0dGluZworICAgICAgICBXZWJQYWdl
UHJveHk6OnNldFN1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZSgpIG5vIGxvbmdlciBzdXBwcmVzc2Vk
IHZpc2liaWxpdHkgdXBkYXRlcy4gVGhpcyBjYXVzZXMKKyAgICAgICAgZnVsbCBzY3JlZW4gYW5p
bWF0aW9ucyB0byBiZWNvbWUgImZsYXNoeSIgd2hlbiBtb3ZpbmcgdGhlIFdlYlZpZXcgYmV0d2Vl
biB0aGUgcmVndWxhciBhbmQgZnVsbAorICAgICAgICBzY3JlZW4gd2luZG93LCBhcyBhIEhUTUxN
ZWRpYUVsZW1lbnQgaW4gdGhlIGZ1bGwgc2NyZWVuIGFuaW1hdGlvbiB3aWxsIHJlY2VpdmUgYSAi
IXZpc2libGUiCisgICAgICAgIG5vdGlmaWNhdGlvbiBhbmQgZGlzY29ubmVjdCBpdHMgcmVuZGVy
aW5nIHBpcGVsaW5lLgorCisgICAgICAgIEluIFdlYlBhZ2VQcm94eTo6dmlld1N0YXRlRGlkQ2hh
bmdlKCksIHJlc3BlY3QgbV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzIGFuZCBiYWlsIG91dCBl
YXJseQorICAgICAgICBpZiBzZXQuIEluIFdlYlBhZ2VQcm94eTo6c2V0U3VwcHJlc3NWaXNpYmls
aXR5VXBkYXRlcygpLCB0cmlnZ2VyIGFuIGV4cGxpY2l0IHVwZGF0ZSBhZnRlcgorICAgICAgICBj
bGVhcmluZyBtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMuCisKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpzZXRT
dXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
Ojp2aWV3U3RhdGVEaWRDaGFuZ2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHku
aDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpzZXRTdXBwcmVzc1Zpc2liaWxpdHlV
cGRhdGVzKTogRGVsZXRlZC4KKwogMjAxNS0wMi0yMyAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJz
Y2FAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBBUEkgZm9yIGZldGNoaW5nIHdlYnNpdGUgZGF0
YSByZWNvcmRzIHRvIF9XS1dlYnNpdGVEYXRhU3RvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggOTUyZTlhNGU4OGQwNGE4YmNlYWRiYzlhYTdlYmQ0MmZi
Y2M5ZjM3Yi4uOTBkMWY3NmI2ZDc4NjhmMTFhZjczZjdlNjAwMjhmZDhiODQ2YTJhOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTEyMjcsNiArMTIyNywy
MSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFNjcm9sbChjb25zdCBGbG9hdFBvaW50JiBz
Y3JvbGxQb3NpdGlvbiwgYm9vbCBpc1Byb2dyYQogICAgIG1fcGFnZUNsaWVudC5yZXF1ZXN0U2Ny
b2xsKHNjcm9sbFBvc2l0aW9uLCBpc1Byb2dyYW1tYXRpY1Njcm9sbCk7CiB9CiAKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpzZXRTdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKGJvb2wgZmxhZykKK3sKKyAg
ICBpZiAobV9zdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzID09IGZsYWcpCisgICAgICAgIHJldHVy
bjsKKyAgICBtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMgPSBmbGFnOworCisgICAgaWYgKCFt
X3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMpIHsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICAg
ICAgbV92aWV3U3RhdGVDaGFuZ2VEaXNwYXRjaGVyLT5zY2hlZHVsZSgpOworI2Vsc2UKKyAgICAg
ICAgZGlzcGF0Y2hWaWV3U3RhdGVDaGFuZ2UoKTsKKyNlbmRpZgorICAgIH0KK30KKwogdm9pZCBX
ZWJQYWdlUHJveHk6OnVwZGF0ZVZpZXdTdGF0ZShWaWV3U3RhdGU6OkZsYWdzIGZsYWdzVG9VcGRh
dGUpCiB7CiAgICAgbV92aWV3U3RhdGUgJj0gfmZsYWdzVG9VcGRhdGU7CkBAIC0xMjUxLDYgKzEy
NjYsOSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6dmlld1N0YXRlRGlkQ2hhbmdlKFZpZXdTdGF0ZTo6
RmxhZ3MgbWF5SGF2ZUNoYW5nZWQsIGJvb2wgd2FudAogICAgIG1fcG90ZW50aWFsbHlDaGFuZ2Vk
Vmlld1N0YXRlRmxhZ3MgfD0gbWF5SGF2ZUNoYW5nZWQ7CiAgICAgbV92aWV3U3RhdGVDaGFuZ2VX
YW50c1N5bmNocm9ub3VzUmVwbHkgPSBtX3ZpZXdTdGF0ZUNoYW5nZVdhbnRzU3luY2hyb25vdXNS
ZXBseSB8fCB3YW50c1N5bmNocm9ub3VzUmVwbHk7CiAKKyAgICBpZiAobV9zdXBwcmVzc1Zpc2li
aWxpdHlVcGRhdGVzICYmIGRpc3BhdGNoTW9kZSAhPSBWaWV3U3RhdGVDaGFuZ2VEaXNwYXRjaE1v
ZGU6OkltbWVkaWF0ZSkKKyAgICAgICAgcmV0dXJuOworCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAg
ICAgYm9vbCBpc05ld2x5SW5XaW5kb3cgPSAhaXNJbldpbmRvdygpICYmIChtYXlIYXZlQ2hhbmdl
ZCAmIFZpZXdTdGF0ZTo6SXNJbldpbmRvdykgJiYgbV9wYWdlQ2xpZW50LmlzVmlld0luV2luZG93
KCk7CiAgICAgaWYgKGRpc3BhdGNoTW9kZSA9PSBWaWV3U3RhdGVDaGFuZ2VEaXNwYXRjaE1vZGU6
OkltbWVkaWF0ZSB8fCBpc05ld2x5SW5XaW5kb3cpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuaAppbmRleCAyOTI3YTZkOTE1YTUxNGQ1YzNkOGQxYjNiODExODljNjRlMzA2
Y2E4Li5hMDgwYjQwZDRiODAwMzA2M2RmMmRkZjllN2NkYjdmMDYwN2E0MmExIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC04OTIsNyArODkyLDcgQEAgcHVibGlj
OgogICAgIC8vIFdlYlBvcHVwTWVudVByb3h5OjpDbGllbnQKICAgICB2aXJ0dWFsIE5hdGl2ZVdl
Yk1vdXNlRXZlbnQqIGN1cnJlbnRseVByb2Nlc3NlZE1vdXNlRG93bkV2ZW50KCkgb3ZlcnJpZGU7
CiAKLSAgICB2b2lkIHNldFN1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMoYm9vbCBmbGFnKSB7IG1f
c3VwcHJlc3NWaXNpYmlsaXR5VXBkYXRlcyA9IGZsYWc7IH0KKyAgICB2b2lkIHNldFN1cHByZXNz
VmlzaWJpbGl0eVVwZGF0ZXMoYm9vbCBmbGFnKTsKICAgICBib29sIHN1cHByZXNzVmlzaWJpbGl0
eVVwZGF0ZXMoKSB7IHJldHVybiBtX3N1cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXM7IH0KIAogI2lm
IFBMQVRGT1JNKElPUykK
</data>

          </attachment>
      

    </bug>

</bugzilla>