<?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>110741</bug_id>
          
          <creation_ts>2013-02-25 02:13:07 -0800</creation_ts>
          <short_desc>[WK2][EFL] WebView: Add callbacks to the WKViewClient to remove direct access to page viewport controller</short_desc>
          <delta_ts>2013-04-08 07:48:34 -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>WebKit EFL</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>
          <dependson>110463</dependson>
          <blocked>107657</blocked>
    
    <blocked>107662</blocked>
    
    <blocked>111401</blocked>
    
    <blocked>111543</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mikhail Pozdnyakov">mikhail.pozdnyakov</reporter>
          <assigned_to name="Mikhail Pozdnyakov">mikhail.pozdnyakov</assigned_to>
          <cc>andersca</cc>
    
    <cc>buildbot</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kenneth</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>840815</commentid>
    <comment_count>0</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-02-25 02:13:07 -0800</bug_when>
    <thetext>SSIA. WKViewClient interface shall be extended.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840876</commentid>
    <comment_count>1</comment_count>
      <attachid>190036</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-02-25 04:47:24 -0800</bug_when>
    <thetext>Created attachment 190036
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840916</commentid>
    <comment_count>2</comment_count>
      <attachid>190036</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2013-02-25 05:59:14 -0800</bug_when>
    <thetext>Comment on attachment 190036
patch

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

&gt; Source/WebKit2/UIProcess/API/C/efl/WKView.h:56
&gt; +    WKViewCallback                                   pageTransitionViewportReady;

Maybe we could find a better name that users could actually understand :-) I have no suggestion though.

&gt; Source/WebKit2/UIProcess/efl/WebViewClient.h:48
&gt; +    void pageTransitionViewportReady(WebView*);

When exactly does this happen? Isnt it when the new page is ready to render something?

Something with did?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840928</commentid>
    <comment_count>3</comment_count>
      <attachid>190036</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-25 06:35:35 -0800</bug_when>
    <thetext>Comment on attachment 190036
patch

Attachment 190036 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16745259

New failing tests:
svg/zoom/page/zoom-mask-with-percentages.svg</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841697</commentid>
    <comment_count>4</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-02-26 00:13:19 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 190036 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=190036&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/C/efl/WKView.h:56
&gt; &gt; +    WKViewCallback                                   pageTransitionViewportReady;
&gt; 
&gt; Maybe we could find a better name that users could actually understand :-) I have no suggestion though.
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/efl/WebViewClient.h:48
&gt; &gt; +    void pageTransitionViewportReady(WebView*);
&gt; 
&gt; When exactly does this happen? Isnt it when the new page is ready to render something?
yeah
&gt; 
&gt; Something with did?
I guess we could take after WebPage and use &quot;didCompletePageTransition&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841700</commentid>
    <comment_count>5</comment_count>
      <attachid>190219</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-02-26 00:23:14 -0800</bug_when>
    <thetext>Created attachment 190219
patch v2

WebViewClient pageTransitionViewportReady -&gt; didCompletePageTransition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841850</commentid>
    <comment_count>6</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2013-02-26 03:41:07 -0800</bug_when>
    <thetext>LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859269</commentid>
    <comment_count>7</comment_count>
      <attachid>190219</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2013-03-20 04:53:29 -0700</bug_when>
    <thetext>Comment on attachment 190219
patch v2

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

&gt; Source/WebKit2/UIProcess/API/C/efl/WKView.h:44
&gt; +typedef void (*WKViewPageDidRequestScrollCallback)(WKViewRef view, WKPoint position, const void* clientInfo);

Wouldn&apos;t something like didChangePosition not make more sense?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859558</commentid>
    <comment_count>8</comment_count>
      <attachid>190219</attachid>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2013-03-20 11:05:23 -0700</bug_when>
    <thetext>Comment on attachment 190219
patch v2

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

&gt;&gt; Source/WebKit2/UIProcess/API/C/efl/WKView.h:44
&gt;&gt; +typedef void (*WKViewPageDidRequestScrollCallback)(WKViewRef view, WKPoint position, const void* clientInfo);
&gt; 
&gt; Wouldn&apos;t something like didChangePosition not make more sense?

I think the DidRequestScroll is fine. The scroll was requested, the view user may decide to do different things besides setting the position like not scrolling at all, or scroll the page in an animated fashion. While WKView shouldn&apos;t automatically handle those things, it&apos;s fine for the EWK specific view to handle them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859560</commentid>
    <comment_count>9</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2013-03-20 11:07:31 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 190219 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=190219&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit2/UIProcess/API/C/efl/WKView.h:44
&gt; &gt;&gt; +typedef void (*WKViewPageDidRequestScrollCallback)(WKViewRef view, WKPoint position, const void* clientInfo);
&gt; &gt; 
&gt; &gt; Wouldn&apos;t something like didChangePosition not make more sense?
&gt; 
&gt; I think the DidRequestScroll is fine. The scroll was requested, the view user may decide to do different things besides setting the position like not scrolling at all, or scroll the page in an animated fashion. While WKView shouldn&apos;t automatically handle those things, it&apos;s fine for the EWK specific view to handle them.

The problem is that in some cases we automatically adjust the position on the web process site, so it is not really a request.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859581</commentid>
    <comment_count>10</comment_count>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2013-03-20 11:27:55 -0700</bug_when>
    <thetext>&gt; The problem is that in some cases we automatically adjust the position on the web process site, so it is not really a request.

Which cases?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>870757</commentid>
    <comment_count>11</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-04-08 06:42:05 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; &gt; The problem is that in some cases we automatically adjust the position on the web process site, so it is not really a request.
&gt; 
&gt; Which cases?

For instance when viewport attributes are changing, please take a look at WebPage::sendViewportAttributesChanged.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>870777</commentid>
    <comment_count>12</comment_count>
      <attachid>196856</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-04-08 07:39:13 -0700</bug_when>
    <thetext>Created attachment 196856
patch v3

Rebased. didRequestScroll -&gt; didChangeContentsPosition</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>870779</commentid>
    <comment_count>13</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-04-08 07:48:34 -0700</bug_when>
    <thetext>Committed r147913: &lt;http://trac.webkit.org/changeset/147913&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190036</attachid>
            <date>2013-02-25 04:47:24 -0800</date>
            <delta_ts>2013-02-26 00:23:14 -0800</delta_ts>
            <desc>patch</desc>
            <filename>bug110741</filename>
            <type>text/plain</type>
            <size>11694</size>
            <attacher name="Mikhail Pozdnyakov">mikhail.pozdnyakov</attacher>
            
              <data encoding="base64">Y29tbWl0IGE3YjRlNzk2MTEzZjhiMTU5M2IwYWZjZmEzZDU4MTk1NjQ2YzM5YzYKQXV0aG9yOiBN
aWtoYWlsIFBvemRueWFrb3YgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CkRhdGU6ICAg
TW9uIEZlYiAyNSAxNDo0MTowNyAyMDEzICswMjAwCgogICAgYnVnMTEwNzQxCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmlu
ZGV4IDI5YzA0N2EuLmY4NTg3ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0MiBAQAorMjAxMy0w
Mi0yNSAgTWlraGFpbCBQb3pkbnlha292ICA8bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4K
KworICAgICAgICBbV0syXVtFRkxdIFdlYlZpZXc6IHJlbW92ZSBkaXJlY3QgYWNjZXNzIHRvIHBh
Z2Ugdmlld3BvcnQgY29udHJvbGxlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTEwNzQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgUHJvdmlkZWQgV0tWaWV3Q2xpZW50IHdpdGggZGlkUmVxdWVzdFNjcm9s
bCwgZGlkUmVuZGVyRnJhbWUgYW5kIHBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeQorICAgICAg
ICBjYWxsYmFja3Mgc28gdGhhdCBkaXJlY3QgYWNjZXNzIGZyb20gV2ViVmlldyB0byBwYWdlIHZp
ZXdwb3J0IGNvbnRyb2xsZXIgaXMgYXZvaWRlZC4KKworICAgICAgICBJbXBsZW1lbnRhdGlvbiBv
ZiBjYWxsYmFja3MgaXMgYWxzbyBhZGRlZCB0byBrZWVwIHRoZSBjdXJyZW50IEVGTCBXSzIgZnVu
Y3Rpb25hbGl0eS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9lZmwvV0tWaWV3Lmg6Cisg
ICAgICAgICogVUlQcm9jZXNzL2VmbC9QYWdlTG9hZENsaWVudEVmbC5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OlBhZ2VMb2FkQ2xpZW50RWZsOjpkaWRDb21taXRMb2FkRm9yRnJhbWUpOgorCisgICAg
ICAgICAgICBNb3ZlZCBoZXJlIGNvZGUgZnJvbSBkZWxldGVkIFdlYlZpZXc6OmRpZENvbW1pdExv
YWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1ZpZXdDbGllbnRFZmwuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpWaWV3Q2xpZW50RWZsOjpkaWRSZXF1ZXN0U2Nyb2xsKToKKyAgICAgICAgKFdl
YktpdCk6CisgICAgICAgIChXZWJLaXQ6OlZpZXdDbGllbnRFZmw6OmRpZFJlbmRlckZyYW1lKToK
KyAgICAgICAgKFdlYktpdDo6Vmlld0NsaWVudEVmbDo6cGFnZVRyYW5zaXRpb25WaWV3cG9ydFJl
YWR5KToKKyAgICAgICAgKFdlYktpdDo6Vmlld0NsaWVudEVmbDo6Vmlld0NsaWVudEVmbCk6Cisg
ICAgICAgICogVUlQcm9jZXNzL2VmbC9WaWV3Q2xpZW50RWZsLmg6CisgICAgICAgIChWaWV3Q2xp
ZW50RWZsKToKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1dlYlZpZXcuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJWaWV3OjpwYWdlRGlkUmVxdWVzdFNjcm9sbCk6CisgICAgICAgIChXZWJLaXQ6
OldlYlZpZXc6OmRpZFJlbmRlckZyYW1lKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlldzo6cGFn
ZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1dlYlZp
ZXcuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJWaWV3Q2xpZW50OjpkaWRSZXF1ZXN0U2Nyb2xsKToKKyAgICAgICAgKFdl
YktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdDbGllbnQ6OmRpZFJlbmRlckZyYW1lKToK
KyAgICAgICAgKFdlYktpdDo6V2ViVmlld0NsaWVudDo6cGFnZVRyYW5zaXRpb25WaWV3cG9ydFJl
YWR5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQuaDoKKyAgICAgICAg
KFdlYkNvcmUpOgorCiAyMDEzLTAyLTI0ICBBbmRyZWFzIEtsaW5nICA8YWtsaW5nQGFwcGxlLmNv
bT4KIAogICAgICAgICBSZWR1Y2UgaW5jbHVkZSBncmFwaCBvZiBKU0RPTUJpbmRpbmcuaApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL2VmbC9XS1ZpZXcuaCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9lZmwvV0tWaWV3LmgKaW5kZXggNzM0NTU2Ni4u
MmI2M2Q3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL2VmbC9X
S1ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvZWZsL1dLVmlldy5o
CkBAIC0zOCw4ICszOCwxMSBAQCB0eXBlZGVmIHN0cnVjdCBfY2Fpcm9fc3VyZmFjZSBjYWlyb19z
dXJmYWNlX3Q7CiBleHRlcm4gIkMiIHsKICNlbmRpZgogCit0eXBlZGVmIHZvaWQgKCpXS1ZpZXdD
YWxsYmFjaykoV0tWaWV3UmVmIHZpZXcsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogdHlwZWRl
ZiB2b2lkICgqV0tWaWV3Vmlld05lZWRzRGlzcGxheUNhbGxiYWNrKShXS1ZpZXdSZWYgdmlldywg
V0tSZWN0IGFyZWEsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogdHlwZWRlZiB2b2lkICgqV0tW
aWV3UGFnZURpZENoYW5nZUNvbnRlbnRzU2l6ZUNhbGxiYWNrKShXS1ZpZXdSZWYgdmlldywgV0tT
aXplIHNpemUsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwordHlwZWRlZiB2b2lkICgqV0tWaWV3
UGFnZURpZFJlcXVlc3RTY3JvbGxDYWxsYmFjaykoV0tWaWV3UmVmIHZpZXcsIFdLUG9pbnQgcG9z
aXRpb24sIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwordHlwZWRlZiB2b2lkICgqV0tWaWV3UGFn
ZURpZFJlbmRlckZyYW1lQ2FsbGJhY2spKFdLVmlld1JlZiB2aWV3LCBXS1NpemUgY29udGVudHNT
aXplLCBXS1JlY3QgY292ZXJlZFJlY3QsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogCiBzdHJ1
Y3QgV0tWaWV3Q2xpZW50IHsKICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdmVyc2lvbjsKQEAgLTQ4LDYgKzUxLDkgQEAgc3RydWN0IFdLVmlld0Ns
aWVudCB7CiAgICAgLy8gVmVyc2lvbiAwCiAgICAgV0tWaWV3Vmlld05lZWRzRGlzcGxheUNhbGxi
YWNrICAgICAgICAgICAgICAgICAgIHZpZXdOZWVkc0Rpc3BsYXk7CiAgICAgV0tWaWV3UGFnZURp
ZENoYW5nZUNvbnRlbnRzU2l6ZUNhbGxiYWNrICAgICAgICAgIGRpZENoYW5nZUNvbnRlbnRzU2l6
ZTsKKyAgICBXS1ZpZXdQYWdlRGlkUmVxdWVzdFNjcm9sbENhbGxiYWNrICAgICAgICAgICAgICAg
ZGlkUmVxdWVzdFNjcm9sbDsKKyAgICBXS1ZpZXdQYWdlRGlkUmVuZGVyRnJhbWVDYWxsYmFjayAg
ICAgICAgICAgICAgICAgZGlkUmVuZGVyRnJhbWU7CisgICAgV0tWaWV3Q2FsbGJhY2sgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeTsK
IH07CiB0eXBlZGVmIHN0cnVjdCBXS1ZpZXdDbGllbnQgV0tWaWV3Q2xpZW50OwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VMb2FkQ2xpZW50RWZsLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUxvYWRDbGllbnRFZmwuY3BwCmluZGV4
IDBlMWU0ZTAuLmEyMTcyMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9l
ZmwvUGFnZUxvYWRDbGllbnRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9l
ZmwvUGFnZUxvYWRDbGllbnRFZmwuY3BwCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiUGFn
ZUxvYWRDbGllbnRFZmwuaCIKIAogI2luY2x1ZGUgIkV3a1ZpZXcuaCIKKyNpbmNsdWRlICJQYWdl
Vmlld3BvcnRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiV0tBUElDYXN0LmgiCiAjaW5jbHVkZSAi
V0tGcmFtZS5oIgogI2luY2x1ZGUgIldLUGFnZS5oIgpAQCAtMTE2LDcgKzExNywxMiBAQCB2b2lk
IFBhZ2VMb2FkQ2xpZW50RWZsOjpkaWRDb21taXRMb2FkRm9yRnJhbWUoV0tQYWdlUmVmLCBXS0Zy
YW1lUmVmIGZyYW1lLCBXS1R5cAogICAgICAgICByZXR1cm47CiAKICAgICBFd2tWaWV3KiB2aWV3
ID0gdG9QYWdlTG9hZENsaWVudEVmbChjbGllbnRJbmZvKS0+dmlldygpOwotICAgIHZpZXctPndl
YlZpZXcoKS0+ZGlkQ29tbWl0TG9hZCgpOworICAgIGlmIChXS1BhZ2VVc2VGaXhlZExheW91dCh2
aWV3LT53a1BhZ2UoKSkpIHsKKyAgICAgICAgdmlldy0+cGFnZVZpZXdwb3J0Q29udHJvbGxlcigp
LT5kaWRDb21taXRMb2FkKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICB2aWV3LT5z
Y2hlZHVsZVVwZGF0ZURpc3BsYXkoKTsKIH0KIAogdm9pZCBQYWdlTG9hZENsaWVudEVmbDo6ZGlk
Q2hhbmdlQmFja0ZvcndhcmRMaXN0KFdLUGFnZVJlZiwgV0tCYWNrRm9yd2FyZExpc3RJdGVtUmVm
IGFkZGVkSXRlbSwgV0tBcnJheVJlZiByZW1vdmVkSXRlbXMsIGNvbnN0IHZvaWQqIGNsaWVudElu
Zm8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1ZpZXdDbGllbnRF
ZmwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9WaWV3Q2xpZW50RWZsLmNwcApp
bmRleCA3N2Y4YmYzLi4zMWJkOThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvZWZsL1ZpZXdDbGllbnRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9l
ZmwvVmlld0NsaWVudEVmbC5jcHAKQEAgLTI3LDkgKzI3LDExIEBACiAjaW5jbHVkZSAiVmlld0Ns
aWVudEVmbC5oIgogCiAjaW5jbHVkZSAiRXdrVmlldy5oIgorI2luY2x1ZGUgIlBhZ2VWaWV3cG9y
dENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJXS1ZpZXcuaCIKIAogdXNpbmcgbmFtZXNwYWNlIEV3
a1ZpZXdDYWxsYmFja3M7Cit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdl
YktpdCB7CiAKQEAgLTUwLDYgKzUyLDQwIEBAIHZvaWQgVmlld0NsaWVudEVmbDo6ZGlkQ2hhbmdl
Q29udGVudHNTaXplKFdLVmlld1JlZiwgV0tTaXplIHNpemUsIGNvbnN0IHZvaWQqIGNsCiAgICAg
ZXdrVmlldy0+c21hcnRDYWxsYmFjazxDb250ZW50c1NpemVDaGFuZ2VkPigpLmNhbGwoc2l6ZSk7
CiB9CiAKK3ZvaWQgVmlld0NsaWVudEVmbDo6ZGlkUmVxdWVzdFNjcm9sbChXS1ZpZXdSZWYsIFdL
UG9pbnQgcG9zaXRpb24sIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCit7CisgICAgRXdrVmlldyog
ZXdrVmlldyA9IHRvRXdrVmlldyhjbGllbnRJbmZvKTsKKyAgICBpZiAoV0tQYWdlVXNlRml4ZWRM
YXlvdXQoZXdrVmlldy0+d2tQYWdlKCkpKSB7CisgICAgICAgIGV3a1ZpZXctPnBhZ2VWaWV3cG9y
dENvbnRyb2xsZXIoKS0+cGFnZURpZFJlcXVlc3RTY3JvbGwodG9JbnRQb2ludChwb3NpdGlvbikp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgZXdrVmlldy0+c2V0UGFnZVBvc2l0aW9u
KEZsb2F0UG9pbnQocG9zaXRpb24ueCwgcG9zaXRpb24ueSkpOworICAgIGV3a1ZpZXctPnNjaGVk
dWxlVXBkYXRlRGlzcGxheSgpOworfQorCit2b2lkIFZpZXdDbGllbnRFZmw6OmRpZFJlbmRlckZy
YW1lKFdLVmlld1JlZiwgV0tTaXplIGNvbnRlbnRzU2l6ZSwgV0tSZWN0IGNvdmVyZWRSZWN0LCBj
b25zdCB2b2lkKiBjbGllbnRJbmZvKQoreworICAgIEV3a1ZpZXcqIGV3a1ZpZXcgPSB0b0V3a1Zp
ZXcoY2xpZW50SW5mbyk7CisgICAgaWYgKFdLUGFnZVVzZUZpeGVkTGF5b3V0KGV3a1ZpZXctPndr
UGFnZSgpKSkgeworICAgICAgICBld2tWaWV3LT5wYWdlVmlld3BvcnRDb250cm9sbGVyKCktPmRp
ZFJlbmRlckZyYW1lKHRvSW50U2l6ZShjb250ZW50c1NpemUpLCB0b0ludFJlY3QoY292ZXJlZFJl
Y3QpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGV3a1ZpZXctPnNjaGVkdWxlVXBk
YXRlRGlzcGxheSgpOworfQorCit2b2lkIFZpZXdDbGllbnRFZmw6OnBhZ2VUcmFuc2l0aW9uVmll
d3BvcnRSZWFkeShXS1ZpZXdSZWYsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCit7CisgICAgRXdr
VmlldyogZXdrVmlldyA9IHRvRXdrVmlldyhjbGllbnRJbmZvKTsKKyAgICBpZiAoV0tQYWdlVXNl
Rml4ZWRMYXlvdXQoZXdrVmlldy0+d2tQYWdlKCkpKSB7CisgICAgICAgIGV3a1ZpZXctPnBhZ2VW
aWV3cG9ydENvbnRyb2xsZXIoKS0+cGFnZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KCk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBld2tWaWV3LT5zY2hlZHVsZVVwZGF0ZURpc3BsYXko
KTsKK30KKwogVmlld0NsaWVudEVmbDo6Vmlld0NsaWVudEVmbChFd2tWaWV3KiB2aWV3KQogICAg
IDogbV92aWV3KHZpZXcpCiB7CkBAIC02MSw2ICs5Nyw5IEBAIFZpZXdDbGllbnRFZmw6OlZpZXdD
bGllbnRFZmwoRXdrVmlldyogdmlldykKICAgICB2aWV3Q2xpZW50LmNsaWVudEluZm8gPSB0aGlz
OwogICAgIHZpZXdDbGllbnQuZGlkQ2hhbmdlQ29udGVudHNTaXplID0gZGlkQ2hhbmdlQ29udGVu
dHNTaXplOwogICAgIHZpZXdDbGllbnQudmlld05lZWRzRGlzcGxheSA9IHZpZXdOZWVkc0Rpc3Bs
YXk7CisgICAgdmlld0NsaWVudC5kaWRSZXF1ZXN0U2Nyb2xsID0gZGlkUmVxdWVzdFNjcm9sbDsK
KyAgICB2aWV3Q2xpZW50LmRpZFJlbmRlckZyYW1lID0gZGlkUmVuZGVyRnJhbWU7CisgICAgdmll
d0NsaWVudC5wYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHkgPSBwYWdlVHJhbnNpdGlvblZpZXdw
b3J0UmVhZHk7CiAKICAgICBXS1ZpZXdTZXRWaWV3Q2xpZW50KG1fdmlldy0+d2tWaWV3KCksICZ2
aWV3Q2xpZW50KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwv
Vmlld0NsaWVudEVmbC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9WaWV3Q2xpZW50
RWZsLmgKaW5kZXggMmViZDNhMi4uOTU2MjAxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2VmbC9WaWV3Q2xpZW50RWZsLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2VmbC9WaWV3Q2xpZW50RWZsLmgKQEAgLTQ5LDYgKzQ5LDkgQEAgcHJpdmF0ZToKICAgICBz
dGF0aWMgRXdrVmlldyogdG9Fd2tWaWV3KGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogICAgIHN0
YXRpYyB2b2lkIHZpZXdOZWVkc0Rpc3BsYXkoV0tWaWV3UmVmLCBXS1JlY3QgYXJlYSwgY29uc3Qg
dm9pZCogY2xpZW50SW5mbyk7CiAgICAgc3RhdGljIHZvaWQgZGlkQ2hhbmdlQ29udGVudHNTaXpl
KFdLVmlld1JlZiwgV0tTaXplLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRSZXF1ZXN0U2Nyb2xsKFdLVmlld1JlZiwgV0tQb2ludCwgY29uc3Qgdm9pZCogY2xp
ZW50SW5mbyk7CisgICAgc3RhdGljIHZvaWQgZGlkUmVuZGVyRnJhbWUoV0tWaWV3UmVmLCBXS1Np
emUsIFdLUmVjdCwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CisgICAgc3RhdGljIHZvaWQgcGFn
ZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KFdLVmlld1JlZiwgY29uc3Qgdm9pZCogY2xpZW50SW5m
byk7CiAKICAgICBFd2tWaWV3KiBtX3ZpZXc7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9l
ZmwvV2ViVmlldy5jcHAKaW5kZXggMmEzYWE5Yy4uY2Y2NjQ5YTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2VmbC9XZWJWaWV3LmNwcApAQCAtMTg1LDE1ICsxODUsNiBAQCB2b2lkIFdlYlZp
ZXc6OmluaXRpYWxpemVDbGllbnQoY29uc3QgV0tWaWV3Q2xpZW50KiBjbGllbnQpCiAgICAgbV9j
bGllbnQuaW5pdGlhbGl6ZShjbGllbnQpOwogfQogCi12b2lkIFdlYlZpZXc6OmRpZENvbW1pdExv
YWQoKQotewotICAgIGlmIChtX3BhZ2UtPnVzZUZpeGVkTGF5b3V0KCkpIHsKLSAgICAgICAgbV9l
d2tWaWV3LT5wYWdlVmlld3BvcnRDb250cm9sbGVyKCktPmRpZENvbW1pdExvYWQoKTsKLSAgICAg
ICAgcmV0dXJuOwotICAgIH0KLSAgICBtX2V3a1ZpZXctPnNjaGVkdWxlVXBkYXRlRGlzcGxheSgp
OwotfQotCiB2b2lkIFdlYlZpZXc6OnVwZGF0ZVZpZXdwb3J0U2l6ZSgpCiB7CiAgICAgaWYgKG1f
cGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkgewpAQCAtNTE2LDMwICs1MDcsMTcgQEAgdm9pZCBXZWJW
aWV3OjpkaWRDaGFuZ2VWaWV3cG9ydFByb3BlcnRpZXMoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRB
dHRyaWJ1dGVzJiBhdHQKIAogdm9pZCBXZWJWaWV3OjpwYWdlRGlkUmVxdWVzdFNjcm9sbChjb25z
dCBJbnRQb2ludCYgcG9zaXRpb24pCiB7Ci0gICAgaWYgKG1fcGFnZS0+dXNlRml4ZWRMYXlvdXQo
KSkgeyAgICAgICAgCi0gICAgICAgIG1fZXdrVmlldy0+cGFnZVZpZXdwb3J0Q29udHJvbGxlcigp
LT5wYWdlRGlkUmVxdWVzdFNjcm9sbChwb3NpdGlvbik7Ci0gICAgICAgIHJldHVybjsKLSAgICB9
Ci0gICAgbV9ld2tWaWV3LT5zZXRQYWdlUG9zaXRpb24oRmxvYXRQb2ludChwb3NpdGlvbikpOwot
ICAgIG1fZXdrVmlldy0+c2NoZWR1bGVVcGRhdGVEaXNwbGF5KCk7CisgICAgbV9jbGllbnQuZGlk
UmVxdWVzdFNjcm9sbCh0aGlzLCBwb3NpdGlvbik7CiB9CiAKIHZvaWQgV2ViVmlldzo6ZGlkUmVu
ZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplLCBjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JiBjb3ZlcmVkUmVjdCkKIHsKLSAgICBpZiAobV9wYWdlLT51c2VGaXhlZExh
eW91dCgpKSB7Ci0gICAgICAgIG1fZXdrVmlldy0+cGFnZVZpZXdwb3J0Q29udHJvbGxlcigpLT5k
aWRSZW5kZXJGcmFtZShjb250ZW50c1NpemUsIGNvdmVyZWRSZWN0KTsKLSAgICAgICAgcmV0dXJu
OwotICAgIH0KLSAgICBtX2V3a1ZpZXctPnNjaGVkdWxlVXBkYXRlRGlzcGxheSgpOworICAgIG1f
Y2xpZW50LmRpZFJlbmRlckZyYW1lKHRoaXMsIGNvbnRlbnRzU2l6ZSwgY292ZXJlZFJlY3QpOwog
fQogCiB2b2lkIFdlYlZpZXc6OnBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSgpCiB7Ci0gICAg
aWYgKG1fcGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkgewotICAgICAgICBtX2V3a1ZpZXctPnBhZ2VW
aWV3cG9ydENvbnRyb2xsZXIoKS0+cGFnZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KCk7Ci0gICAg
ICAgIHJldHVybjsKLSAgICB9Ci0gICAgbV9ld2tWaWV3LT5zY2hlZHVsZVVwZGF0ZURpc3BsYXko
KTsKKyAgICBtX2NsaWVudC5wYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHkodGhpcyk7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2VmbC9XZWJWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXcu
aAppbmRleCA0MmM4ZDEzLi4wM2ZlZGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvZWZsL1dlYlZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dl
YlZpZXcuaApAQCAtODcsNyArODcsNiBAQCBwdWJsaWM6CiAgICAgRXZhc19PYmplY3QqIGV2YXNP
YmplY3QoKTsKICAgICBXZWJQYWdlUHJveHkqIHBhZ2UoKSB7IHJldHVybiBtX3BhZ2UuZ2V0KCk7
IH0KIAotICAgIHZvaWQgZGlkQ29tbWl0TG9hZCgpOwogICAgIHZvaWQgdXBkYXRlVmlld3BvcnRT
aXplKCk7CiAgICAgdm9pZCBkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgV2ViQ29yZTo6SW50
U2l6ZSYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZp
ZXdDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3Q2xpZW50
LmNwcAppbmRleCAwNWZjODBjLi4xNDNlOWY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9lZmwvV2ViVmlld0NsaWVudC5jcHAKQEAgLTQ4LDQgKzQ4LDI4IEBAIHZvaWQgV2ViVmll
d0NsaWVudDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKFdlYlZpZXcqIHZpZXcsIGNvbnN0IEludFNp
emUmIHNpemUpCiAgICAgbV9jbGllbnQuZGlkQ2hhbmdlQ29udGVudHNTaXplKHRvQVBJKHZpZXcp
LCB0b0FQSShzaXplKSwgbV9jbGllbnQuY2xpZW50SW5mbyk7CiB9CiAKK3ZvaWQgV2ViVmlld0Ns
aWVudDo6ZGlkUmVxdWVzdFNjcm9sbChXZWJWaWV3KiB2aWV3LCBjb25zdCBXZWJDb3JlOjpJbnRQ
b2ludCYgcG9pbnQpCit7CisgICAgaWYgKCFtX2NsaWVudC5kaWRSZXF1ZXN0U2Nyb2xsKQorICAg
ICAgICByZXR1cm47CisKKyAgICBtX2NsaWVudC5kaWRSZXF1ZXN0U2Nyb2xsKHRvQVBJKHZpZXcp
LCB0b0FQSShwb2ludCksIG1fY2xpZW50LmNsaWVudEluZm8pOworfQorCit2b2lkIFdlYlZpZXdD
bGllbnQ6OmRpZFJlbmRlckZyYW1lKFdlYlZpZXcqIHZpZXcsIGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIHNpemUsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNvdmVyZWRSZWN0KQoreworICAgIGlm
ICghbV9jbGllbnQuZGlkUmVuZGVyRnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIG1fY2xp
ZW50LmRpZFJlbmRlckZyYW1lKHRvQVBJKHZpZXcpLCB0b0FQSShzaXplKSwgdG9BUEkoY292ZXJl
ZFJlY3QpLCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30KKwordm9pZCBXZWJWaWV3Q2xpZW50Ojpw
YWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHkoV2ViVmlldyogdmlldykKK3sKKyAgICBpZiAoIW1f
Y2xpZW50LnBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbV9jbGllbnQucGFnZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KHRvQVBJKHZpZXcpLCBtX2Ns
aWVudC5jbGllbnRJbmZvKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQuaCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVudC5oCmluZGV4IGQ1ZTgyZGQuLmE1MTI3
YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVudC5oCkBA
IC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiV0tWaWV3LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKK2NsYXNzIEludFBvaW50OwogY2xhc3MgSW50UmVjdDsKIGNsYXNzIEludFNpemU7CiB9CkBA
IC00Miw2ICs0Myw5IEBAIGNsYXNzIFdlYlZpZXdDbGllbnQ6IHB1YmxpYyBBUElDbGllbnQ8V0tW
aWV3Q2xpZW50LCBrV0tWaWV3Q2xpZW50Q3VycmVudFZlcnNpb24+CiBwdWJsaWM6CiAgICAgdm9p
ZCB2aWV3TmVlZHNEaXNwbGF5KFdlYlZpZXcqLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CiAg
ICAgdm9pZCBkaWRDaGFuZ2VDb250ZW50c1NpemUoV2ViVmlldyosIGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmKTsKKyAgICB2b2lkIGRpZFJlcXVlc3RTY3JvbGwoV2ViVmlldyosIGNvbnN0IFdlYkNv
cmU6OkludFBvaW50Jik7CisgICAgdm9pZCBkaWRSZW5kZXJGcmFtZShXZWJWaWV3KiwgY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKTsKKyAgICB2b2lkIHBh
Z2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeShXZWJWaWV3Kik7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQK
</data>
<flag name="commit-queue"
          id="210642"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190219</attachid>
            <date>2013-02-26 00:23:14 -0800</date>
            <delta_ts>2013-04-08 07:39:13 -0700</delta_ts>
            <desc>patch v2</desc>
            <filename>bug110741_v2</filename>
            <type>text/plain</type>
            <size>11671</size>
            <attacher name="Mikhail Pozdnyakov">mikhail.pozdnyakov</attacher>
            
              <data encoding="base64">Y29tbWl0IDgyNTZkODZmYmVlYmU1ZjBkYzBiZTM5YjI3Y2JjNDE1ZmZiOGJkYzcKQXV0aG9yOiBN
aWtoYWlsIFBvemRueWFrb3YgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CkRhdGU6ICAg
TW9uIEZlYiAyNSAxNDo0MTowNyAyMDEzICswMjAwCgogICAgYnVnMTEwNzQxCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmlu
ZGV4IDI5YzA0N2EuLjAzZTkxYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0MiBAQAorMjAxMy0w
Mi0yNSAgTWlraGFpbCBQb3pkbnlha292ICA8bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4K
KworICAgICAgICBbV0syXVtFRkxdIFdlYlZpZXc6IHJlbW92ZSBkaXJlY3QgYWNjZXNzIHRvIHBh
Z2Ugdmlld3BvcnQgY29udHJvbGxlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTEwNzQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgUHJvdmlkZWQgV0tWaWV3Q2xpZW50IHdpdGggZGlkUmVxdWVzdFNjcm9s
bCwgZGlkUmVuZGVyRnJhbWUgYW5kIGRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb24KKyAgICAgICAg
Y2FsbGJhY2tzIHNvIHRoYXQgZGlyZWN0IGFjY2VzcyBmcm9tIFdlYlZpZXcgdG8gcGFnZSB2aWV3
cG9ydCBjb250cm9sbGVyIGlzIGF2b2lkZWQuCisKKyAgICAgICAgSW1wbGVtZW50YXRpb24gb2Yg
Y2FsbGJhY2tzIGlzIGFsc28gYWRkZWQgdG8ga2VlcCB0aGUgY3VycmVudCBFRkwgV0syIGZ1bmN0
aW9uYWxpdHkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvZWZsL1dLVmlldy5oOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9lZmwvUGFnZUxvYWRDbGllbnRFZmwuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpQYWdlTG9hZENsaWVudEVmbDo6ZGlkQ29tbWl0TG9hZEZvckZyYW1lKToKKworICAgICAg
ICAgICAgTW92ZWQgaGVyZSBjb2RlIGZyb20gZGVsZXRlZCBXZWJWaWV3OjpkaWRDb21taXRMb2Fk
LgorCisgICAgICAgICogVUlQcm9jZXNzL2VmbC9WaWV3Q2xpZW50RWZsLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6Vmlld0NsaWVudEVmbDo6ZGlkUmVxdWVzdFNjcm9sbCk6CisgICAgICAgIChXZWJL
aXQpOgorICAgICAgICAoV2ViS2l0OjpWaWV3Q2xpZW50RWZsOjpkaWRSZW5kZXJGcmFtZSk6Cisg
ICAgICAgIChXZWJLaXQ6OlZpZXdDbGllbnRFZmw6OnBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFk
eSk6CisgICAgICAgIChXZWJLaXQ6OlZpZXdDbGllbnRFZmw6OlZpZXdDbGllbnRFZmwpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9lZmwvVmlld0NsaWVudEVmbC5oOgorICAgICAgICAoVmlld0NsaWVu
dEVmbCk6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViVmlldzo6cGFnZURpZFJlcXVlc3RTY3JvbGwpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJWaWV3OjpkaWRSZW5kZXJGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXc6OnBhZ2VU
cmFuc2l0aW9uVmlld3BvcnRSZWFkeSk6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9XZWJWaWV3
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9XZWJWaWV3Q2xpZW50LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViVmlld0NsaWVudDo6ZGlkUmVxdWVzdFNjcm9sbCk6CisgICAgICAgIChXZWJL
aXQpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3Q2xpZW50OjpkaWRSZW5kZXJGcmFtZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlZpZXdDbGllbnQ6OnBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFk
eSk6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9XZWJWaWV3Q2xpZW50Lmg6CisgICAgICAgIChX
ZWJDb3JlKToKKwogMjAxMy0wMi0yNCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+
CiAKICAgICAgICAgUmVkdWNlIGluY2x1ZGUgZ3JhcGggb2YgSlNET01CaW5kaW5nLmgKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9lZmwvV0tWaWV3LmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvZWZsL1dLVmlldy5oCmluZGV4IDczNDU1NjYuLmI2
MmVjNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9lZmwvV0tW
aWV3LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL2VmbC9XS1ZpZXcuaApA
QCAtMzgsOCArMzgsMTEgQEAgdHlwZWRlZiBzdHJ1Y3QgX2NhaXJvX3N1cmZhY2UgY2Fpcm9fc3Vy
ZmFjZV90OwogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAordHlwZWRlZiB2b2lkICgqV0tWaWV3Q2Fs
bGJhY2spKFdLVmlld1JlZiB2aWV3LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKIHR5cGVkZWYg
dm9pZCAoKldLVmlld1ZpZXdOZWVkc0Rpc3BsYXlDYWxsYmFjaykoV0tWaWV3UmVmIHZpZXcsIFdL
UmVjdCBhcmVhLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKIHR5cGVkZWYgdm9pZCAoKldLVmll
d1BhZ2VEaWRDaGFuZ2VDb250ZW50c1NpemVDYWxsYmFjaykoV0tWaWV3UmVmIHZpZXcsIFdLU2l6
ZSBzaXplLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLVmlld1Bh
Z2VEaWRSZXF1ZXN0U2Nyb2xsQ2FsbGJhY2spKFdLVmlld1JlZiB2aWV3LCBXS1BvaW50IHBvc2l0
aW9uLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLVmlld1BhZ2VE
aWRSZW5kZXJGcmFtZUNhbGxiYWNrKShXS1ZpZXdSZWYgdmlldywgV0tTaXplIGNvbnRlbnRzU2l6
ZSwgV0tSZWN0IGNvdmVyZWRSZWN0LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKIAogc3RydWN0
IFdLVmlld0NsaWVudCB7CiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHZlcnNpb247CkBAIC00OCw2ICs1MSw5IEBAIHN0cnVjdCBXS1ZpZXdDbGll
bnQgewogICAgIC8vIFZlcnNpb24gMAogICAgIFdLVmlld1ZpZXdOZWVkc0Rpc3BsYXlDYWxsYmFj
ayAgICAgICAgICAgICAgICAgICB2aWV3TmVlZHNEaXNwbGF5OwogICAgIFdLVmlld1BhZ2VEaWRD
aGFuZ2VDb250ZW50c1NpemVDYWxsYmFjayAgICAgICAgICBkaWRDaGFuZ2VDb250ZW50c1NpemU7
CisgICAgV0tWaWV3UGFnZURpZFJlcXVlc3RTY3JvbGxDYWxsYmFjayAgICAgICAgICAgICAgIGRp
ZFJlcXVlc3RTY3JvbGw7CisgICAgV0tWaWV3UGFnZURpZFJlbmRlckZyYW1lQ2FsbGJhY2sgICAg
ICAgICAgICAgICAgIGRpZFJlbmRlckZyYW1lOworICAgIFdLVmlld0NhbGxiYWNrICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBkaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uOwogfTsK
IHR5cGVkZWYgc3RydWN0IFdLVmlld0NsaWVudCBXS1ZpZXdDbGllbnQ7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUxvYWRDbGllbnRFZmwuY3BwIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlTG9hZENsaWVudEVmbC5jcHAKaW5kZXggMGUx
ZTRlMC4uYTIxNzIyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Q
YWdlTG9hZENsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Q
YWdlTG9hZENsaWVudEVmbC5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJQYWdlTG9h
ZENsaWVudEVmbC5oIgogCiAjaW5jbHVkZSAiRXdrVmlldy5oIgorI2luY2x1ZGUgIlBhZ2VWaWV3
cG9ydENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJXS0FQSUNhc3QuaCIKICNpbmNsdWRlICJXS0Zy
YW1lLmgiCiAjaW5jbHVkZSAiV0tQYWdlLmgiCkBAIC0xMTYsNyArMTE3LDEyIEBAIHZvaWQgUGFn
ZUxvYWRDbGllbnRFZmw6OmRpZENvbW1pdExvYWRGb3JGcmFtZShXS1BhZ2VSZWYsIFdLRnJhbWVS
ZWYgZnJhbWUsIFdLVHlwCiAgICAgICAgIHJldHVybjsKIAogICAgIEV3a1ZpZXcqIHZpZXcgPSB0
b1BhZ2VMb2FkQ2xpZW50RWZsKGNsaWVudEluZm8pLT52aWV3KCk7Ci0gICAgdmlldy0+d2ViVmll
dygpLT5kaWRDb21taXRMb2FkKCk7CisgICAgaWYgKFdLUGFnZVVzZUZpeGVkTGF5b3V0KHZpZXct
PndrUGFnZSgpKSkgeworICAgICAgICB2aWV3LT5wYWdlVmlld3BvcnRDb250cm9sbGVyKCktPmRp
ZENvbW1pdExvYWQoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHZpZXctPnNjaGVk
dWxlVXBkYXRlRGlzcGxheSgpOwogfQogCiB2b2lkIFBhZ2VMb2FkQ2xpZW50RWZsOjpkaWRDaGFu
Z2VCYWNrRm9yd2FyZExpc3QoV0tQYWdlUmVmLCBXS0JhY2tGb3J3YXJkTGlzdEl0ZW1SZWYgYWRk
ZWRJdGVtLCBXS0FycmF5UmVmIHJlbW92ZWRJdGVtcywgY29uc3Qgdm9pZCogY2xpZW50SW5mbykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvVmlld0NsaWVudEVmbC5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1ZpZXdDbGllbnRFZmwuY3BwCmluZGV4
IDc3ZjhiZjMuLjdlMThjN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9l
ZmwvVmlld0NsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9W
aWV3Q2xpZW50RWZsLmNwcApAQCAtMjcsOSArMjcsMTEgQEAKICNpbmNsdWRlICJWaWV3Q2xpZW50
RWZsLmgiCiAKICNpbmNsdWRlICJFd2tWaWV3LmgiCisjaW5jbHVkZSAiUGFnZVZpZXdwb3J0Q29u
dHJvbGxlci5oIgogI2luY2x1ZGUgIldLVmlldy5oIgogCiB1c2luZyBuYW1lc3BhY2UgRXdrVmll
d0NhbGxiYWNrczsKK3VzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgV2ViS2l0
IHsKIApAQCAtNTAsNiArNTIsNDAgQEAgdm9pZCBWaWV3Q2xpZW50RWZsOjpkaWRDaGFuZ2VDb250
ZW50c1NpemUoV0tWaWV3UmVmLCBXS1NpemUgc2l6ZSwgY29uc3Qgdm9pZCogY2wKICAgICBld2tW
aWV3LT5zbWFydENhbGxiYWNrPENvbnRlbnRzU2l6ZUNoYW5nZWQ+KCkuY2FsbChzaXplKTsKIH0K
IAordm9pZCBWaWV3Q2xpZW50RWZsOjpkaWRSZXF1ZXN0U2Nyb2xsKFdLVmlld1JlZiwgV0tQb2lu
dCBwb3NpdGlvbiwgY29uc3Qgdm9pZCogY2xpZW50SW5mbykKK3sKKyAgICBFd2tWaWV3KiBld2tW
aWV3ID0gdG9Fd2tWaWV3KGNsaWVudEluZm8pOworICAgIGlmIChXS1BhZ2VVc2VGaXhlZExheW91
dChld2tWaWV3LT53a1BhZ2UoKSkpIHsKKyAgICAgICAgZXdrVmlldy0+cGFnZVZpZXdwb3J0Q29u
dHJvbGxlcigpLT5wYWdlRGlkUmVxdWVzdFNjcm9sbCh0b0ludFBvaW50KHBvc2l0aW9uKSk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBld2tWaWV3LT5zZXRQYWdlUG9zaXRpb24oRmxv
YXRQb2ludChwb3NpdGlvbi54LCBwb3NpdGlvbi55KSk7CisgICAgZXdrVmlldy0+c2NoZWR1bGVV
cGRhdGVEaXNwbGF5KCk7Cit9CisKK3ZvaWQgVmlld0NsaWVudEVmbDo6ZGlkUmVuZGVyRnJhbWUo
V0tWaWV3UmVmLCBXS1NpemUgY29udGVudHNTaXplLCBXS1JlY3QgY292ZXJlZFJlY3QsIGNvbnN0
IHZvaWQqIGNsaWVudEluZm8pCit7CisgICAgRXdrVmlldyogZXdrVmlldyA9IHRvRXdrVmlldyhj
bGllbnRJbmZvKTsKKyAgICBpZiAoV0tQYWdlVXNlRml4ZWRMYXlvdXQoZXdrVmlldy0+d2tQYWdl
KCkpKSB7CisgICAgICAgIGV3a1ZpZXctPnBhZ2VWaWV3cG9ydENvbnRyb2xsZXIoKS0+ZGlkUmVu
ZGVyRnJhbWUodG9JbnRTaXplKGNvbnRlbnRzU2l6ZSksIHRvSW50UmVjdChjb3ZlcmVkUmVjdCkp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgZXdrVmlldy0+c2NoZWR1bGVVcGRhdGVE
aXNwbGF5KCk7Cit9CisKK3ZvaWQgVmlld0NsaWVudEVmbDo6ZGlkQ29tcGxldGVQYWdlVHJhbnNp
dGlvbihXS1ZpZXdSZWYsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCit7CisgICAgRXdrVmlldyog
ZXdrVmlldyA9IHRvRXdrVmlldyhjbGllbnRJbmZvKTsKKyAgICBpZiAoV0tQYWdlVXNlRml4ZWRM
YXlvdXQoZXdrVmlldy0+d2tQYWdlKCkpKSB7CisgICAgICAgIGV3a1ZpZXctPnBhZ2VWaWV3cG9y
dENvbnRyb2xsZXIoKS0+cGFnZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KCk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisKKyAgICBld2tWaWV3LT5zY2hlZHVsZVVwZGF0ZURpc3BsYXkoKTsKK30K
KwogVmlld0NsaWVudEVmbDo6Vmlld0NsaWVudEVmbChFd2tWaWV3KiB2aWV3KQogICAgIDogbV92
aWV3KHZpZXcpCiB7CkBAIC02MSw2ICs5Nyw5IEBAIFZpZXdDbGllbnRFZmw6OlZpZXdDbGllbnRF
ZmwoRXdrVmlldyogdmlldykKICAgICB2aWV3Q2xpZW50LmNsaWVudEluZm8gPSB0aGlzOwogICAg
IHZpZXdDbGllbnQuZGlkQ2hhbmdlQ29udGVudHNTaXplID0gZGlkQ2hhbmdlQ29udGVudHNTaXpl
OwogICAgIHZpZXdDbGllbnQudmlld05lZWRzRGlzcGxheSA9IHZpZXdOZWVkc0Rpc3BsYXk7Cisg
ICAgdmlld0NsaWVudC5kaWRSZXF1ZXN0U2Nyb2xsID0gZGlkUmVxdWVzdFNjcm9sbDsKKyAgICB2
aWV3Q2xpZW50LmRpZFJlbmRlckZyYW1lID0gZGlkUmVuZGVyRnJhbWU7CisgICAgdmlld0NsaWVu
dC5kaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uID0gZGlkQ29tcGxldGVQYWdlVHJhbnNpdGlvbjsK
IAogICAgIFdLVmlld1NldFZpZXdDbGllbnQobV92aWV3LT53a1ZpZXcoKSwgJnZpZXdDbGllbnQp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9WaWV3Q2xpZW50
RWZsLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1ZpZXdDbGllbnRFZmwuaAppbmRl
eCAyZWJkM2EyLi4yYzdkMzdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
ZWZsL1ZpZXdDbGllbnRFZmwuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1Zp
ZXdDbGllbnRFZmwuaApAQCAtNDksNiArNDksOSBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBFd2tW
aWV3KiB0b0V3a1ZpZXcoY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiAgICAgc3RhdGljIHZvaWQg
dmlld05lZWRzRGlzcGxheShXS1ZpZXdSZWYsIFdLUmVjdCBhcmVhLCBjb25zdCB2b2lkKiBjbGll
bnRJbmZvKTsKICAgICBzdGF0aWMgdm9pZCBkaWRDaGFuZ2VDb250ZW50c1NpemUoV0tWaWV3UmVm
LCBXS1NpemUsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOworICAgIHN0YXRpYyB2b2lkIGRpZFJl
cXVlc3RTY3JvbGwoV0tWaWV3UmVmLCBXS1BvaW50LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsK
KyAgICBzdGF0aWMgdm9pZCBkaWRSZW5kZXJGcmFtZShXS1ZpZXdSZWYsIFdLU2l6ZSwgV0tSZWN0
LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRDb21wbGV0ZVBh
Z2VUcmFuc2l0aW9uKFdLVmlld1JlZiwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiAKICAgICBF
d2tWaWV3KiBtX3ZpZXc7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlldy5j
cHAKaW5kZXggMmEzYWE5Yy4uODJjYzI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2VmbC9XZWJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZs
L1dlYlZpZXcuY3BwCkBAIC0xODUsMTUgKzE4NSw2IEBAIHZvaWQgV2ViVmlldzo6aW5pdGlhbGl6
ZUNsaWVudChjb25zdCBXS1ZpZXdDbGllbnQqIGNsaWVudCkKICAgICBtX2NsaWVudC5pbml0aWFs
aXplKGNsaWVudCk7CiB9CiAKLXZvaWQgV2ViVmlldzo6ZGlkQ29tbWl0TG9hZCgpCi17Ci0gICAg
aWYgKG1fcGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkgewotICAgICAgICBtX2V3a1ZpZXctPnBhZ2VW
aWV3cG9ydENvbnRyb2xsZXIoKS0+ZGlkQ29tbWl0TG9hZCgpOwotICAgICAgICByZXR1cm47Ci0g
ICAgfQotICAgIG1fZXdrVmlldy0+c2NoZWR1bGVVcGRhdGVEaXNwbGF5KCk7Ci19Ci0KIHZvaWQg
V2ViVmlldzo6dXBkYXRlVmlld3BvcnRTaXplKCkKIHsKICAgICBpZiAobV9wYWdlLT51c2VGaXhl
ZExheW91dCgpKSB7CkBAIC01MTYsMzAgKzUwNywxNyBAQCB2b2lkIFdlYlZpZXc6OmRpZENoYW5n
ZVZpZXdwb3J0UHJvcGVydGllcyhjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEF0dHJpYnV0ZXMmIGF0
dAogCiB2b2lkIFdlYlZpZXc6OnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKGNvbnN0IEludFBvaW50JiBw
b3NpdGlvbikKIHsKLSAgICBpZiAobV9wYWdlLT51c2VGaXhlZExheW91dCgpKSB7ICAgICAgICAK
LSAgICAgICAgbV9ld2tWaWV3LT5wYWdlVmlld3BvcnRDb250cm9sbGVyKCktPnBhZ2VEaWRSZXF1
ZXN0U2Nyb2xsKHBvc2l0aW9uKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLSAgICBtX2V3a1Zp
ZXctPnNldFBhZ2VQb3NpdGlvbihGbG9hdFBvaW50KHBvc2l0aW9uKSk7Ci0gICAgbV9ld2tWaWV3
LT5zY2hlZHVsZVVwZGF0ZURpc3BsYXkoKTsKKyAgICBtX2NsaWVudC5kaWRSZXF1ZXN0U2Nyb2xs
KHRoaXMsIHBvc2l0aW9uKTsKIH0KIAogdm9pZCBXZWJWaWV3OjpkaWRSZW5kZXJGcmFtZShjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiBjb250ZW50c1NpemUsIGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
IGNvdmVyZWRSZWN0KQogewotICAgIGlmIChtX3BhZ2UtPnVzZUZpeGVkTGF5b3V0KCkpIHsKLSAg
ICAgICAgbV9ld2tWaWV3LT5wYWdlVmlld3BvcnRDb250cm9sbGVyKCktPmRpZFJlbmRlckZyYW1l
KGNvbnRlbnRzU2l6ZSwgY292ZXJlZFJlY3QpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAg
IG1fZXdrVmlldy0+c2NoZWR1bGVVcGRhdGVEaXNwbGF5KCk7CisgICAgbV9jbGllbnQuZGlkUmVu
ZGVyRnJhbWUodGhpcywgY29udGVudHNTaXplLCBjb3ZlcmVkUmVjdCk7CiB9CiAKIHZvaWQgV2Vi
Vmlldzo6cGFnZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KCkKIHsKLSAgICBpZiAobV9wYWdlLT51
c2VGaXhlZExheW91dCgpKSB7Ci0gICAgICAgIG1fZXdrVmlldy0+cGFnZVZpZXdwb3J0Q29udHJv
bGxlcigpLT5wYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHkoKTsKLSAgICAgICAgcmV0dXJuOwot
ICAgIH0KLSAgICBtX2V3a1ZpZXctPnNjaGVkdWxlVXBkYXRlRGlzcGxheSgpOworICAgIG1fY2xp
ZW50LmRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb24odGhpcyk7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXcuaAppbmRleCA0MmM4ZDEz
Li4wM2ZlZGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZp
ZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXcuaApAQCAtODcs
NyArODcsNiBAQCBwdWJsaWM6CiAgICAgRXZhc19PYmplY3QqIGV2YXNPYmplY3QoKTsKICAgICBX
ZWJQYWdlUHJveHkqIHBhZ2UoKSB7IHJldHVybiBtX3BhZ2UuZ2V0KCk7IH0KIAotICAgIHZvaWQg
ZGlkQ29tbWl0TG9hZCgpOwogICAgIHZvaWQgdXBkYXRlVmlld3BvcnRTaXplKCk7CiAgICAgdm9p
ZCBkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQuY3BwIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3Q2xpZW50LmNwcAppbmRleCAwNWZj
ODBjLi5kNmIwODVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dl
YlZpZXdDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmll
d0NsaWVudC5jcHAKQEAgLTQ4LDQgKzQ4LDI4IEBAIHZvaWQgV2ViVmlld0NsaWVudDo6ZGlkQ2hh
bmdlQ29udGVudHNTaXplKFdlYlZpZXcqIHZpZXcsIGNvbnN0IEludFNpemUmIHNpemUpCiAgICAg
bV9jbGllbnQuZGlkQ2hhbmdlQ29udGVudHNTaXplKHRvQVBJKHZpZXcpLCB0b0FQSShzaXplKSwg
bV9jbGllbnQuY2xpZW50SW5mbyk7CiB9CiAKK3ZvaWQgV2ViVmlld0NsaWVudDo6ZGlkUmVxdWVz
dFNjcm9sbChXZWJWaWV3KiB2aWV3LCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgcG9pbnQpCit7
CisgICAgaWYgKCFtX2NsaWVudC5kaWRSZXF1ZXN0U2Nyb2xsKQorICAgICAgICByZXR1cm47CisK
KyAgICBtX2NsaWVudC5kaWRSZXF1ZXN0U2Nyb2xsKHRvQVBJKHZpZXcpLCB0b0FQSShwb2ludCks
IG1fY2xpZW50LmNsaWVudEluZm8pOworfQorCit2b2lkIFdlYlZpZXdDbGllbnQ6OmRpZFJlbmRl
ckZyYW1lKFdlYlZpZXcqIHZpZXcsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUsIGNvbnN0
IFdlYkNvcmU6OkludFJlY3QmIGNvdmVyZWRSZWN0KQoreworICAgIGlmICghbV9jbGllbnQuZGlk
UmVuZGVyRnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIG1fY2xpZW50LmRpZFJlbmRlckZy
YW1lKHRvQVBJKHZpZXcpLCB0b0FQSShzaXplKSwgdG9BUEkoY292ZXJlZFJlY3QpLCBtX2NsaWVu
dC5jbGllbnRJbmZvKTsKK30KKwordm9pZCBXZWJWaWV3Q2xpZW50OjpkaWRDb21wbGV0ZVBhZ2VU
cmFuc2l0aW9uKFdlYlZpZXcqIHZpZXcpCit7CisgICAgaWYgKCFtX2NsaWVudC5kaWRDb21wbGV0
ZVBhZ2VUcmFuc2l0aW9uKQorICAgICAgICByZXR1cm47CisKKyAgICBtX2NsaWVudC5kaWRDb21w
bGV0ZVBhZ2VUcmFuc2l0aW9uKHRvQVBJKHZpZXcpLCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwv
V2ViVmlld0NsaWVudC5oCmluZGV4IGQ1ZTgyZGQuLjYzYWZmMmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVudC5oCkBAIC0zMCw2ICszMCw3IEBACiAjaW5j
bHVkZSAiV0tWaWV3LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIEludFBvaW50Owog
Y2xhc3MgSW50UmVjdDsKIGNsYXNzIEludFNpemU7CiB9CkBAIC00Miw2ICs0Myw5IEBAIGNsYXNz
IFdlYlZpZXdDbGllbnQ6IHB1YmxpYyBBUElDbGllbnQ8V0tWaWV3Q2xpZW50LCBrV0tWaWV3Q2xp
ZW50Q3VycmVudFZlcnNpb24+CiBwdWJsaWM6CiAgICAgdm9pZCB2aWV3TmVlZHNEaXNwbGF5KFdl
YlZpZXcqLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CiAgICAgdm9pZCBkaWRDaGFuZ2VDb250
ZW50c1NpemUoV2ViVmlldyosIGNvbnN0IFdlYkNvcmU6OkludFNpemUmKTsKKyAgICB2b2lkIGRp
ZFJlcXVlc3RTY3JvbGwoV2ViVmlldyosIGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jik7CisgICAg
dm9pZCBkaWRSZW5kZXJGcmFtZShXZWJWaWV3KiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmKTsKKyAgICB2b2lkIGRpZENvbXBsZXRlUGFnZVRyYW5zaXRp
b24oV2ViVmlldyopOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>196856</attachid>
            <date>2013-04-08 07:39:13 -0700</date>
            <delta_ts>2013-04-08 07:41:35 -0700</delta_ts>
            <desc>patch v3</desc>
            <filename>bug110741_v3</filename>
            <type>text/plain</type>
            <size>12251</size>
            <attacher name="Mikhail Pozdnyakov">mikhail.pozdnyakov</attacher>
            
              <data encoding="base64">Y29tbWl0IDIxNDA3ZDA1OWY5OTU1OTUyYzM4MjkwMzY3YmNmMjQ5MjcxN2M2ZTkKQXV0aG9yOiBN
aWtoYWlsIFBvemRueWFrb3YgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CkRhdGU6ICAg
TW9uIEFwciA4IDE3OjM3OjE1IDIwMTMgKzAzMDAKCiAgICBidWcxMTA3NDEKCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5k
ZXggMjhjZmM2Yi4uN2U3NDhmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEzLTA0
LTA4ICBNaWtoYWlsIFBvemRueWFrb3YgIDxtaWtoYWlsLnBvemRueWFrb3ZAaW50ZWwuY29tPgor
CisgICAgICAgIFtXSzJdW0VGTF0gV2ViVmlldzogQWRkIGNhbGxiYWNrcyB0byB0aGUgV0tWaWV3
Q2xpZW50IHRvIHJlbW92ZSBkaXJlY3QgYWNjZXNzIHRvIHBhZ2Ugdmlld3BvcnQgY29udHJvbGxl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwNzQx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdmlk
ZWQgV0tWaWV3Q2xpZW50IHdpdGggZGlkUmVxdWVzdFNjcm9sbCwgZGlkUmVuZGVyRnJhbWUgYW5k
IGRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb24KKyAgICAgICAgY2FsbGJhY2tzIHNvIHRoYXQgZGly
ZWN0IGFjY2VzcyBmcm9tIFdlYlZpZXcgdG8gcGFnZSB2aWV3cG9ydCBjb250cm9sbGVyIGlzIGF2
b2lkZWQuCisKKyAgICAgICAgSW1wbGVtZW50YXRpb24gb2YgY2FsbGJhY2tzIGlzIGFsc28gYWRk
ZWQgdG8ga2VlcCB0aGUgY3VycmVudCBFRkwgV0syIGZ1bmN0aW9uYWxpdHkuCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0MvZWZsL1dLVmlldy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9lZmwv
UGFnZUxvYWRDbGllbnRFZmwuY3BwOgorICAgICAgICAoV2ViS2l0OjpQYWdlTG9hZENsaWVudEVm
bDo6ZGlkQ29tbWl0TG9hZEZvckZyYW1lKToKKworICAgICAgICAgICAgTW92ZWQgaGVyZSBjb2Rl
IGZyb20gZGVsZXRlZCBXZWJWaWV3OjpkaWRDb21taXRMb2FkLgorCisgICAgICAgICogVUlQcm9j
ZXNzL2VmbC9WaWV3Q2xpZW50RWZsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Vmlld0NsaWVudEVm
bDo6ZGlkQ2hhbmdlQ29udGVudHNQb3NpdGlvbik6CisgICAgICAgIChXZWJLaXQpOgorICAgICAg
ICAoV2ViS2l0OjpWaWV3Q2xpZW50RWZsOjpkaWRSZW5kZXJGcmFtZSk6CisgICAgICAgIChXZWJL
aXQ6OlZpZXdDbGllbnRFZmw6OmRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb24pOgorICAgICAgICAo
V2ViS2l0OjpWaWV3Q2xpZW50RWZsOjpWaWV3Q2xpZW50RWZsKToKKyAgICAgICAgKiBVSVByb2Nl
c3MvZWZsL1ZpZXdDbGllbnRFZmwuaDoKKyAgICAgICAgKFZpZXdDbGllbnRFZmwpOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9lZmwvV2ViVmlldy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXc6
OnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlldzo6ZGlkUmVu
ZGVyRnJhbWUpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3OjpwYWdlVHJhbnNpdGlvblZpZXdw
b3J0UmVhZHkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVudC5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlZpZXdDbGllbnQ6OmRpZENoYW5nZUNvbnRlbnRzUG9zaXRpb24p
OgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0NsaWVudDo6ZGlk
UmVuZGVyRnJhbWUpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3Q2xpZW50OjpkaWRDb21wbGV0
ZVBhZ2VUcmFuc2l0aW9uKToKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQu
aDoKKyAgICAgICAgKFdlYkNvcmUpOgorCiAyMDEzLTA0LTA3ICBEYXZpZCBLaWx6ZXIgIDxkZGtp
bHplckBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHRoZSByZXN0IG9mIFNWR19ET01fT0JK
Q19CSU5ESU5HUwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL2Vm
bC9XS1ZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9lZmwvV0tWaWV3LmgK
aW5kZXggNTIwZjAyMi4uMzcwMmJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL2VmbC9XS1ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvZWZsL1dLVmlldy5oCkBAIC0zNCw2ICszNCw4IEBAIHR5cGVkZWYgdm9pZCAoKldLVmlld0Nh
bGxiYWNrKShXS1ZpZXdSZWYgdmlldywgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiB0eXBlZGVm
IHZvaWQgKCpXS1ZpZXdWaWV3TmVlZHNEaXNwbGF5Q2FsbGJhY2spKFdLVmlld1JlZiB2aWV3LCBX
S1JlY3QgYXJlYSwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiB0eXBlZGVmIHZvaWQgKCpXS1Zp
ZXdQYWdlRGlkQ2hhbmdlQ29udGVudHNTaXplQ2FsbGJhY2spKFdLVmlld1JlZiB2aWV3LCBXS1Np
emUgc2l6ZSwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiB0eXBlZGVmIHZvaWQgKCpXS1ZpZXdX
ZWJQcm9jZXNzQ3Jhc2hlZENhbGxiYWNrKShXS1ZpZXdSZWYgdmlldywgV0tVUkxSZWYgdXJsLCBj
b25zdCB2b2lkKiBjbGllbnRJbmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLVmlld1BhZ2VEaWRDaGFu
Z2VDb250ZW50c1Bvc2l0aW9uQ2FsbGJhY2spKFdLVmlld1JlZiB2aWV3LCBXS1BvaW50IHBvc2l0
aW9uLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLVmlld1BhZ2VE
aWRSZW5kZXJGcmFtZUNhbGxiYWNrKShXS1ZpZXdSZWYgdmlldywgV0tTaXplIGNvbnRlbnRzU2l6
ZSwgV0tSZWN0IGNvdmVyZWRSZWN0LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKIAogc3RydWN0
IFdLVmlld0NsaWVudCB7CiAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHZlcnNpb247CkBAIC00NCw2ICs0Niw5IEBAIHN0cnVjdCBXS1ZpZXdDbGll
bnQgewogICAgIFdLVmlld1BhZ2VEaWRDaGFuZ2VDb250ZW50c1NpemVDYWxsYmFjayAgICAgICAg
ICBkaWRDaGFuZ2VDb250ZW50c1NpemU7CiAgICAgV0tWaWV3V2ViUHJvY2Vzc0NyYXNoZWRDYWxs
YmFjayAgICAgICAgICAgICAgICAgIHdlYlByb2Nlc3NDcmFzaGVkOwogICAgIFdLVmlld0NhbGxi
YWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWJQcm9jZXNzRGlkUmVsYXVu
Y2g7CisgICAgV0tWaWV3UGFnZURpZENoYW5nZUNvbnRlbnRzUG9zaXRpb25DYWxsYmFjayAgICAg
IGRpZENoYW5nZUNvbnRlbnRzUG9zaXRpb247CisgICAgV0tWaWV3UGFnZURpZFJlbmRlckZyYW1l
Q2FsbGJhY2sgICAgICAgICAgICAgICAgIGRpZFJlbmRlckZyYW1lOworICAgIFdLVmlld0NhbGxi
YWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWRDb21wbGV0ZVBhZ2VUcmFu
c2l0aW9uOwogfTsKIHR5cGVkZWYgc3RydWN0IFdLVmlld0NsaWVudCBXS1ZpZXdDbGllbnQ7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUxvYWRDbGllbnRF
ZmwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlTG9hZENsaWVudEVmbC5j
cHAKaW5kZXggMGUxZTRlMC4uOGI5NjFmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2VmbC9QYWdlTG9hZENsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2VmbC9QYWdlTG9hZENsaWVudEVmbC5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNs
dWRlICJQYWdlTG9hZENsaWVudEVmbC5oIgogCiAjaW5jbHVkZSAiRXdrVmlldy5oIgorI2luY2x1
ZGUgIlBhZ2VWaWV3cG9ydENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJXS0FQSUNhc3QuaCIKICNp
bmNsdWRlICJXS0ZyYW1lLmgiCiAjaW5jbHVkZSAiV0tQYWdlLmgiCkBAIC0xMTYsNyArMTE3LDE0
IEBAIHZvaWQgUGFnZUxvYWRDbGllbnRFZmw6OmRpZENvbW1pdExvYWRGb3JGcmFtZShXS1BhZ2VS
ZWYsIFdLRnJhbWVSZWYgZnJhbWUsIFdLVHlwCiAgICAgICAgIHJldHVybjsKIAogICAgIEV3a1Zp
ZXcqIHZpZXcgPSB0b1BhZ2VMb2FkQ2xpZW50RWZsKGNsaWVudEluZm8pLT52aWV3KCk7Ci0gICAg
dmlldy0+d2ViVmlldygpLT5kaWRDb21taXRMb2FkKCk7CisgICAgaWYgKFdLUGFnZVVzZUZpeGVk
TGF5b3V0KHZpZXctPndrUGFnZSgpKSkgeworI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElO
RykKKyAgICAgICAgdmlldy0+cGFnZVZpZXdwb3J0Q29udHJvbGxlcigpLT5kaWRDb21taXRMb2Fk
KCk7CisjZW5kaWYKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHZpZXctPnNjaGVkdWxl
VXBkYXRlRGlzcGxheSgpOwogfQogCiB2b2lkIFBhZ2VMb2FkQ2xpZW50RWZsOjpkaWRDaGFuZ2VC
YWNrRm9yd2FyZExpc3QoV0tQYWdlUmVmLCBXS0JhY2tGb3J3YXJkTGlzdEl0ZW1SZWYgYWRkZWRJ
dGVtLCBXS0FycmF5UmVmIHJlbW92ZWRJdGVtcywgY29uc3Qgdm9pZCogY2xpZW50SW5mbykKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvVmlld0NsaWVudEVmbC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1ZpZXdDbGllbnRFZmwuY3BwCmluZGV4IDUy
YjNkYmIuLjRiYWIyMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwv
Vmlld0NsaWVudEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9WaWV3
Q2xpZW50RWZsLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgPFdlYktpdDIvV0tWaWV3
Lmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBFd2tWaWV3Q2FsbGJhY2tzOwordXNpbmcgbmFtZXNwYWNl
IFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCkBAIC05MSw2ICs5Miw0NSBAQCB2b2lk
IFZpZXdDbGllbnRFZmw6OndlYlByb2Nlc3NEaWRSZWxhdW5jaChXS1ZpZXdSZWYgdmlld1JlZiwg
Y29uc3Qgdm9pZCogY2xpZW50SQogICAgICAgICBXS1ZpZXdTZXRUaGVtZVBhdGgodmlld1JlZiwg
YWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZyh0aGVtZVBhdGgpKS5nZXQoKSk7
CiB9CiAKK3ZvaWQgVmlld0NsaWVudEVmbDo6ZGlkQ2hhbmdlQ29udGVudHNQb3NpdGlvbihXS1Zp
ZXdSZWYsIFdLUG9pbnQgcG9zaXRpb24sIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCit7CisgICAg
RXdrVmlldyogZXdrVmlldyA9IHRvRXdrVmlldyhjbGllbnRJbmZvKTsKKyAgICBpZiAoV0tQYWdl
VXNlRml4ZWRMYXlvdXQoZXdrVmlldy0+d2tQYWdlKCkpKSB7CisjaWYgVVNFKEFDQ0VMRVJBVEVE
X0NPTVBPU0lUSU5HKQorICAgICAgICBld2tWaWV3LT5wYWdlVmlld3BvcnRDb250cm9sbGVyKCkt
PnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKHRvSW50UG9pbnQocG9zaXRpb24pKTsKKyNlbmRpZgorICAg
ICAgICByZXR1cm47CisgICAgfQorCisgICAgZXdrVmlldy0+c2NoZWR1bGVVcGRhdGVEaXNwbGF5
KCk7Cit9CisKK3ZvaWQgVmlld0NsaWVudEVmbDo6ZGlkUmVuZGVyRnJhbWUoV0tWaWV3UmVmLCBX
S1NpemUgY29udGVudHNTaXplLCBXS1JlY3QgY292ZXJlZFJlY3QsIGNvbnN0IHZvaWQqIGNsaWVu
dEluZm8pCit7CisgICAgRXdrVmlldyogZXdrVmlldyA9IHRvRXdrVmlldyhjbGllbnRJbmZvKTsK
KyAgICBpZiAoV0tQYWdlVXNlRml4ZWRMYXlvdXQoZXdrVmlldy0+d2tQYWdlKCkpKSB7CisjaWYg
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgICAgICBld2tWaWV3LT5wYWdlVmlld3Bv
cnRDb250cm9sbGVyKCktPmRpZFJlbmRlckZyYW1lKHRvSW50U2l6ZShjb250ZW50c1NpemUpLCB0
b0ludFJlY3QoY292ZXJlZFJlY3QpKTsKKyNlbmRpZgorICAgICAgICByZXR1cm47CisgICAgfQor
CisgICAgZXdrVmlldy0+c2NoZWR1bGVVcGRhdGVEaXNwbGF5KCk7Cit9CisKK3ZvaWQgVmlld0Ns
aWVudEVmbDo6ZGlkQ29tcGxldGVQYWdlVHJhbnNpdGlvbihXS1ZpZXdSZWYsIGNvbnN0IHZvaWQq
IGNsaWVudEluZm8pCit7CisgICAgRXdrVmlldyogZXdrVmlldyA9IHRvRXdrVmlldyhjbGllbnRJ
bmZvKTsKKyAgICBpZiAoV0tQYWdlVXNlRml4ZWRMYXlvdXQoZXdrVmlldy0+d2tQYWdlKCkpKSB7
CisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgICAgICBld2tWaWV3LT5wYWdl
Vmlld3BvcnRDb250cm9sbGVyKCktPnBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSgpOworI2Vu
ZGlmCisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBld2tWaWV3LT5zY2hlZHVsZVVwZGF0
ZURpc3BsYXkoKTsKK30KKwogVmlld0NsaWVudEVmbDo6Vmlld0NsaWVudEVmbChFd2tWaWV3KiB2
aWV3KQogICAgIDogbV92aWV3KHZpZXcpCiB7CkBAIC0xMDQsNiArMTQ0LDkgQEAgVmlld0NsaWVu
dEVmbDo6Vmlld0NsaWVudEVmbChFd2tWaWV3KiB2aWV3KQogICAgIHZpZXdDbGllbnQudmlld05l
ZWRzRGlzcGxheSA9IHZpZXdOZWVkc0Rpc3BsYXk7CiAgICAgdmlld0NsaWVudC53ZWJQcm9jZXNz
Q3Jhc2hlZCA9IHdlYlByb2Nlc3NDcmFzaGVkOwogICAgIHZpZXdDbGllbnQud2ViUHJvY2Vzc0Rp
ZFJlbGF1bmNoID0gd2ViUHJvY2Vzc0RpZFJlbGF1bmNoOworICAgIHZpZXdDbGllbnQuZGlkQ2hh
bmdlQ29udGVudHNQb3NpdGlvbiA9IGRpZENoYW5nZUNvbnRlbnRzUG9zaXRpb247CisgICAgdmll
d0NsaWVudC5kaWRSZW5kZXJGcmFtZSA9IGRpZFJlbmRlckZyYW1lOworICAgIHZpZXdDbGllbnQu
ZGlkQ29tcGxldGVQYWdlVHJhbnNpdGlvbiA9IGRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb247CiAK
ICAgICBXS1ZpZXdTZXRWaWV3Q2xpZW50KG1fdmlldy0+d2tWaWV3KCksICZ2aWV3Q2xpZW50KTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvVmlld0NsaWVudEVm
bC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9WaWV3Q2xpZW50RWZsLmgKaW5kZXgg
NmJhYWYwOS4uMzc2Y2M1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2Vm
bC9WaWV3Q2xpZW50RWZsLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9WaWV3
Q2xpZW50RWZsLmgKQEAgLTUxLDYgKzUxLDkgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgdm9pZCBk
aWRDaGFuZ2VDb250ZW50c1NpemUoV0tWaWV3UmVmLCBXS1NpemUsIGNvbnN0IHZvaWQqIGNsaWVu
dEluZm8pOwogICAgIHN0YXRpYyB2b2lkIHdlYlByb2Nlc3NDcmFzaGVkKFdLVmlld1JlZiwgV0tV
UkxSZWYsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogICAgIHN0YXRpYyB2b2lkIHdlYlByb2Nl
c3NEaWRSZWxhdW5jaChXS1ZpZXdSZWYsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOworICAgIHN0
YXRpYyB2b2lkIGRpZENoYW5nZUNvbnRlbnRzUG9zaXRpb24oV0tWaWV3UmVmLCBXS1BvaW50LCBj
b25zdCB2b2lkKiBjbGllbnRJbmZvKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZW5kZXJGcmFtZShX
S1ZpZXdSZWYsIFdLU2l6ZSwgV0tSZWN0LCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKKyAgICBz
dGF0aWMgdm9pZCBkaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKFdLVmlld1JlZiwgY29uc3Qgdm9p
ZCogY2xpZW50SW5mbyk7CiAKICAgICBFd2tWaWV3KiBtX3ZpZXc7CiB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9lZmwvV2ViVmlldy5jcHAKaW5kZXggNjc5YTViZS4uNDA4MGZlNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXcuY3BwCkBAIC0yMzEsMTcgKzIzMSw2IEBA
IHZvaWQgV2ViVmlldzo6aW5pdGlhbGl6ZUNsaWVudChjb25zdCBXS1ZpZXdDbGllbnQqIGNsaWVu
dCkKICAgICBtX2NsaWVudC5pbml0aWFsaXplKGNsaWVudCk7CiB9CiAKLXZvaWQgV2ViVmlldzo6
ZGlkQ29tbWl0TG9hZCgpCi17Ci0gICAgaWYgKG1fcGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkgewot
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKLSAgICAgICAgbV9ld2tWaWV3LT5wYWdl
Vmlld3BvcnRDb250cm9sbGVyKCktPmRpZENvbW1pdExvYWQoKTsKLSNlbmRpZgotICAgICAgICBy
ZXR1cm47Ci0gICAgfQotICAgIG1fZXdrVmlldy0+c2NoZWR1bGVVcGRhdGVEaXNwbGF5KCk7Ci19
Ci0KIHZvaWQgV2ViVmlldzo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmIHNpemUpCiB7CiAgICAgbV9jbGllbnQuZGlkQ2hhbmdlQ29udGVudHNTaXplKHRoaXMs
IHNpemUpOwpAQCAtNTUxLDM4ICs1NDAsMjEgQEAgdm9pZCBXZWJWaWV3OjpkaWRDaGFuZ2VWaWV3
cG9ydFByb3BlcnRpZXMoY29uc3QgV2ViQ29yZTo6Vmlld3BvcnRBdHRyaWJ1dGVzJiBhdHQKIAog
dm9pZCBXZWJWaWV3OjpwYWdlRGlkUmVxdWVzdFNjcm9sbChjb25zdCBJbnRQb2ludCYgcG9zaXRp
b24pCiB7Ci0gICAgaWYgKG1fcGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkgewotI2lmIFVTRShBQ0NF
TEVSQVRFRF9DT01QT1NJVElORykKLSAgICAgICAgbV9ld2tWaWV3LT5wYWdlVmlld3BvcnRDb250
cm9sbGVyKCktPnBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKHBvc2l0aW9uKTsKLSNlbmRpZgotICAgICAg
ICByZXR1cm47Ci0gICAgfQogICAgIEZsb2F0UG9pbnQgdWlQb3NpdGlvbihwb3NpdGlvbik7CiAg
ICAgdWlQb3NpdGlvbi5zY2FsZShjb250ZW50U2NhbGVGYWN0b3IoKSwgY29udGVudFNjYWxlRmFj
dG9yKCkpOwogICAgIHNldENvbnRlbnRQb3NpdGlvbih1aVBvc2l0aW9uKTsKLSAgICBtX2V3a1Zp
ZXctPnNjaGVkdWxlVXBkYXRlRGlzcGxheSgpOworCisgICAgbV9jbGllbnQuZGlkQ2hhbmdlQ29u
dGVudHNQb3NpdGlvbih0aGlzLCBwb3NpdGlvbik7CiB9CiAKIHZvaWQgV2ViVmlldzo6ZGlkUmVu
ZGVyRnJhbWUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgY29udGVudHNTaXplLCBjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JiBjb3ZlcmVkUmVjdCkKIHsKLSAgICBpZiAobV9wYWdlLT51c2VGaXhlZExh
eW91dCgpKSB7Ci0jaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQotICAgICAgICBtX2V3
a1ZpZXctPnBhZ2VWaWV3cG9ydENvbnRyb2xsZXIoKS0+ZGlkUmVuZGVyRnJhbWUoY29udGVudHNT
aXplLCBjb3ZlcmVkUmVjdCk7Ci0jZW5kaWYKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLSAgICBt
X2V3a1ZpZXctPnNjaGVkdWxlVXBkYXRlRGlzcGxheSgpOworICAgIG1fY2xpZW50LmRpZFJlbmRl
ckZyYW1lKHRoaXMsIGNvbnRlbnRzU2l6ZSwgY292ZXJlZFJlY3QpOwogfQogCiB2b2lkIFdlYlZp
ZXc6OnBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSgpCiB7Ci0gICAgaWYgKG1fcGFnZS0+dXNl
Rml4ZWRMYXlvdXQoKSkgewotI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKLSAgICAg
ICAgbV9ld2tWaWV3LT5wYWdlVmlld3BvcnRDb250cm9sbGVyKCktPnBhZ2VUcmFuc2l0aW9uVmll
d3BvcnRSZWFkeSgpOwotI2VuZGlmCi0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgbV9ld2tW
aWV3LT5zY2hlZHVsZVVwZGF0ZURpc3BsYXkoKTsKKyAgICBtX2NsaWVudC5kaWRDb21wbGV0ZVBh
Z2VUcmFuc2l0aW9uKHRoaXMpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlldy5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmgKaW5kZXggM2MwYzRjYi4uMjUzN2U2ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmgKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3LmgKQEAgLTEwNCw3ICsxMDQsNiBAQCBwdWJs
aWM6CiAgICAgRXZhc19PYmplY3QqIGV2YXNPYmplY3QoKTsKICAgICBXZWJQYWdlUHJveHkqIHBh
Z2UoKSB7IHJldHVybiBtX3BhZ2UuZ2V0KCk7IH0KIAotICAgIHZvaWQgZGlkQ29tbWl0TG9hZCgp
OyAgICAKICAgICB2b2lkIGRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRT
aXplJik7CiAKICAgICAvLyBGSVhNRTogU2hvdWxkIGJlY29tZSBwcml2YXRlIHdoZW4gV2ViIEV2
ZW50cyBjcmVhdGlvbiBpcyBtb3ZlZCB0byBXZWJWaWV3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3Q2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVudC5jcHAKaW5kZXggZmZjYTA5My4uZGNhZmNjYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9XZWJWaWV3Q2xpZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQuY3BwCkBAIC02
NSw0ICs2NSwyOCBAQCB2b2lkIFdlYlZpZXdDbGllbnQ6OndlYlByb2Nlc3NEaWRSZWxhdW5jaChX
ZWJWaWV3KiB2aWV3KQogICAgIG1fY2xpZW50LndlYlByb2Nlc3NEaWRSZWxhdW5jaCh0b0FQSSh2
aWV3KSwgbV9jbGllbnQuY2xpZW50SW5mbyk7CiB9CiAKK3ZvaWQgV2ViVmlld0NsaWVudDo6ZGlk
Q2hhbmdlQ29udGVudHNQb3NpdGlvbihXZWJWaWV3KiB2aWV3LCBjb25zdCBXZWJDb3JlOjpJbnRQ
b2ludCYgcG9pbnQpCit7CisgICAgaWYgKCFtX2NsaWVudC5kaWRDaGFuZ2VDb250ZW50c1Bvc2l0
aW9uKQorICAgICAgICByZXR1cm47CisKKyAgICBtX2NsaWVudC5kaWRDaGFuZ2VDb250ZW50c1Bv
c2l0aW9uKHRvQVBJKHZpZXcpLCB0b0FQSShwb2ludCksIG1fY2xpZW50LmNsaWVudEluZm8pOwor
fQorCit2b2lkIFdlYlZpZXdDbGllbnQ6OmRpZFJlbmRlckZyYW1lKFdlYlZpZXcqIHZpZXcsIGNv
bnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGNvdmVy
ZWRSZWN0KQoreworICAgIGlmICghbV9jbGllbnQuZGlkUmVuZGVyRnJhbWUpCisgICAgICAgIHJl
dHVybjsKKworICAgIG1fY2xpZW50LmRpZFJlbmRlckZyYW1lKHRvQVBJKHZpZXcpLCB0b0FQSShz
aXplKSwgdG9BUEkoY292ZXJlZFJlY3QpLCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30KKwordm9p
ZCBXZWJWaWV3Q2xpZW50OjpkaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKFdlYlZpZXcqIHZpZXcp
Cit7CisgICAgaWYgKCFtX2NsaWVudC5kaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKQorICAgICAg
ICByZXR1cm47CisKKyAgICBtX2NsaWVudC5kaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKHRvQVBJ
KHZpZXcpLCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1dlYlZpZXdDbGllbnQu
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmlld0NsaWVudC5oCmluZGV4IDEw
Y2Y5MmQuLjI1OTdjMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwv
V2ViVmlld0NsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViVmll
d0NsaWVudC5oCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIEludFBvaW50OwogY2xhc3MgSW50UmVj
dDsKIGNsYXNzIEludFNpemU7CiB9CkBAIC00NSw2ICs0Niw5IEBAIHB1YmxpYzoKICAgICB2b2lk
IGRpZENoYW5nZUNvbnRlbnRzU2l6ZShXZWJWaWV3KiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYp
OwogICAgIHZvaWQgd2ViUHJvY2Vzc0NyYXNoZWQoV2ViVmlldyosIGNvbnN0IFN0cmluZyYgdXJs
KTsKICAgICB2b2lkIHdlYlByb2Nlc3NEaWRSZWxhdW5jaChXZWJWaWV3Kik7CisgICAgdm9pZCBk
aWRDaGFuZ2VDb250ZW50c1Bvc2l0aW9uKFdlYlZpZXcqLCBjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYpOworICAgIHZvaWQgZGlkUmVuZGVyRnJhbWUoV2ViVmlldyosIGNvbnN0IFdlYkNvcmU6Oklu
dFNpemUmLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CisgICAgdm9pZCBkaWRDb21wbGV0ZVBh
Z2VUcmFuc2l0aW9uKFdlYlZpZXcqKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAo=
</data>
<flag name="review"
          id="219026"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>