<?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>64174</bug_id>
          
          <creation_ts>2011-07-08 10:14:12 -0700</creation_ts>
          <short_desc>[Qt][WK2] Views should expose QActions for basic navigation.</short_desc>
          <delta_ts>2011-07-08 11:38:04 -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 Qt</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>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>benjamin</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>434121</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-07-08 10:14:12 -0700</bug_when>
    <thetext>The web views should expose QActions for Back, Forward, Reload and Stop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434125</commentid>
    <comment_count>1</comment_count>
      <attachid>100130</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-07-08 10:17:00 -0700</bug_when>
    <thetext>Created attachment 100130
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434128</commentid>
    <comment_count>2</comment_count>
      <attachid>100130</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2011-07-08 10:18:27 -0700</bug_when>
    <thetext>Comment on attachment 100130
Proposed patch

Needs tests :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434133</commentid>
    <comment_count>3</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-07-08 10:25:30 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 100130 [details])
&gt; Needs tests :)

Ah duh, in the CommonViewInterface of course.
I also realized that for the mobile view, the page should have the navigation actions, not the view.
Cookin&apos; a new one for ya.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434158</commentid>
    <comment_count>4</comment_count>
      <attachid>100136</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-07-08 11:08:14 -0700</bug_when>
    <thetext>Created attachment 100136
Proposed patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434163</commentid>
    <comment_count>5</comment_count>
      <attachid>100136</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-07-08 11:11:18 -0700</bug_when>
    <thetext>Comment on attachment 100136
Proposed patch v2

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

&gt; Tools/MiniBrowser/qt/BrowserView.cpp:97
&gt; +        return touchWebView()-&gt;navigationAction(which);

Should be touchWebView()-&gt;page()-&gt;..., will fix when landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434167</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-08 11:12:03 -0700</bug_when>
    <thetext>Attachment 100136 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit...&quot; exit_code: 1

Source/WebKit2/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Source/WebKit2/UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:20:  Found other header before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 2 in 18 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434183</commentid>
    <comment_count>7</comment_count>
      <attachid>100136</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-07-08 11:25:43 -0700</bug_when>
    <thetext>Comment on attachment 100136
Proposed patch v2

Attachment 100136 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/9000616</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434186</commentid>
    <comment_count>8</comment_count>
      <attachid>100136</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2011-07-08 11:29:11 -0700</bug_when>
    <thetext>Comment on attachment 100136
Proposed patch v2

Stylebot + 

&gt; Tools/MiniBrowser/qt/BrowserView.cpp:98
&gt; +    Q_ASSERT(0);

Q_ASSERT(false)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434193</commentid>
    <comment_count>9</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-07-08 11:38:04 -0700</bug_when>
    <thetext>Committed r90647: &lt;http://trac.webkit.org/changeset/90647&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100130</attachid>
            <date>2011-07-08 10:17:00 -0700</date>
            <delta_ts>2011-07-08 11:08:14 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-64174.diff</filename>
            <type>text/plain</type>
            <size>10676</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBlZGY5N2E0Li42ZWFkZTE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYg
QEAKKzIwMTEtMDctMDggIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgorCisgICAg
ICAgIFtRdF1bV0syXSBWaWV3cyBzaG91bGQgZXhwb3NlIFFBY3Rpb25zIGZvciBiYXNpYyBuYXZp
Z2F0aW9uLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NjQxNzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgbmF2aWdhdGlvbkFjdGlvbigpIG1ldGhvZHMgdG8gdGhlIHZpZXdzIHRvIHByb3ZpZGUgZGVm
YXVsdAorICAgICAgICBRQWN0aW9ucyBmb3IgQmFjaywgRm9yd2FyZCwgU3RvcCBhbmQgUmVsb2Fk
LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9XS1ZpZXcuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL3F0L3FkZXNrdG9wd2Vidmlldy5jcHA6CisgICAgICAgIChRRGVza3RvcFdlYlZp
ZXc6Om5hdmlnYXRpb25BY3Rpb24pOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcWRlc2t0
b3B3ZWJ2aWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xdG91Y2h3ZWJ2aWV3LmNw
cDoKKyAgICAgICAgKFFUb3VjaFdlYlZpZXc6Om5hdmlnYXRpb25BY3Rpb24pOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvcXQvcXRvdWNod2Vidmlldy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYmtpdHR5cGVzLmg6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVBy
b3h5LmNwcDoKKyAgICAgICAgKFF0V2ViUGFnZVByb3h5OjpuYXZpZ2F0aW9uQWN0aW9uKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvcXQvUXRXZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBXZWJLaXQy
QVBJLnByaToKKwogMjAxMS0wNy0wOCAgQmVuamFtaW4gUG91bGFpbiAgPGJlbmphbWluQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgW1dLMl0gRG8gbm90IGZvcndhcmQgdG91Y2ggZXZlbnRzIHRvIHRo
ZSB3ZWIgcHJvY2VzcyB3aGVuIGl0IGRvZXMgbm90IG5lZWQgdGhlbQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9XS1ZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvV0tWaWV3LmgKaW5kZXggMGZkNmYwMS4uMGIyZTBhNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9XS1ZpZXcuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L1dLVmlldy5oCkBAIC0yMCw2ICsyMCw3IEBACiAjaWZu
ZGVmIFdLVmlld19oCiAjZGVmaW5lIFdLVmlld19oCiAKKyNpbmNsdWRlIDxXZWJLaXQyL3F3ZWJr
aXR0eXBlcy5oPgogI2luY2x1ZGUgPFdlYktpdDIvcWRlc2t0b3B3ZWJ2aWV3Lmg+CiAjaW5jbHVk
ZSA8V2ViS2l0Mi9xdG91Y2h3ZWJ2aWV3Lmg+CiAjaW5jbHVkZSA8V2ViS2l0Mi9xdG91Y2h3ZWJw
YWdlLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FkZXNr
dG9wd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FkZXNrdG9w
d2Vidmlldy5jcHAKaW5kZXggNzYxMmVlYy4uNzgxM2VkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xZGVza3RvcHdlYnZpZXcuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcWRlc2t0b3B3ZWJ2aWV3LmNwcApAQCAtMTg0LDYgKzE4
NCwxMSBAQCBRU3RyaW5nIFFEZXNrdG9wV2ViVmlldzo6dGl0bGUoKSBjb25zdAogICAgIHJldHVy
biBkLT5wYWdlLnRpdGxlKCk7CiB9CiAKK1FBY3Rpb24qIFFEZXNrdG9wV2ViVmlldzo6bmF2aWdh
dGlvbkFjdGlvbihRdFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbiB3aGljaCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gZC0+cGFnZS5uYXZpZ2F0aW9uQWN0aW9uKHdoaWNoKTsKK30KKwogdm9pZCBRRGVz
a3RvcFdlYlZpZXc6OnJlc2l6ZUV2ZW50KFFHcmFwaGljc1NjZW5lUmVzaXplRXZlbnQqIGV2KQog
ewogICAgIGQtPnBhZ2Uuc2V0RHJhd2luZ0FyZWFTaXplKGV2LT5uZXdTaXplKCkudG9TaXplKCkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xZGVza3RvcHdl
YnZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcWRlc2t0b3B3ZWJ2aWV3
LmgKaW5kZXggMDdkZjIxZS4uZjA5ZGQ3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xZGVza3RvcHdlYnZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3FkZXNrdG9wd2Vidmlldy5oCkBAIC0yMiw2ICsyMiw3IEBACiAjZGVmaW5l
IHFkZXNrdG9wd2Vidmlld19oCiAKICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCisjaW5jbHVk
ZSAicXdlYmtpdHR5cGVzLmgiCiAjaW5jbHVkZSA8V2ViS2l0Mi9XS0Jhc2UuaD4KIAogI2luY2x1
ZGUgPFFHcmFwaGljc1dpZGdldD4KQEAgLTQ1LDYgKzQ2LDggQEAgcHVibGljOgogICAgIFFVcmwg
dXJsKCkgY29uc3Q7CiAgICAgUVN0cmluZyB0aXRsZSgpIGNvbnN0OwogCisgICAgUUFjdGlvbiog
bmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbiB3aGljaCkgY29uc3Q7
CisKIHB1YmxpYyBRX1NMT1RTOgogICAgICB2b2lkIGxvYWQoY29uc3QgUVVybCYpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F0b3VjaHdlYnZpZXcuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xdG91Y2h3ZWJ2aWV3LmNwcAppbmRl
eCA1YmQxZmYzLi5lMjdhYmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3F0b3VjaHdlYnZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXRvdWNod2Vidmlldy5jcHAKQEAgLTU3LDMgKzU3LDggQEAgUVRvdWNoV2ViUGFnZSog
UVRvdWNoV2ViVmlldzo6cGFnZSgpCiB7CiAgICAgcmV0dXJuIGQtPnBhZ2VWaWV3LmRhdGEoKTsK
IH0KKworUUFjdGlvbiogUVRvdWNoV2ViVmlldzo6bmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6
TmF2aWdhdGlvbkFjdGlvbiB3aGljaCkKK3sKKyAgICByZXR1cm4gZC0+cGFnZS5uYXZpZ2F0aW9u
QWN0aW9uKHdoaWNoKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXRvdWNod2Vidmlldy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
dG91Y2h3ZWJ2aWV3LmgKaW5kZXggMGUxMDRiOS4uZjQ2NGJlYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xdG91Y2h3ZWJ2aWV3LmgKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xdG91Y2h3ZWJ2aWV3LmgKQEAgLTIyLDYgKzIyLDcgQEAK
ICNkZWZpbmUgcXRvdWNod2Vidmlld19oCiAKICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCisj
aW5jbHVkZSAicXdlYmtpdHR5cGVzLmgiCiAKICNpbmNsdWRlIDxRR3JhcGhpY3NXaWRnZXQ+CiAK
QEAgLTQzLDYgKzQ0LDggQEAgcHVibGljOgogCiAgICAgUVRvdWNoV2ViUGFnZSAqcGFnZSgpOwog
CisgICAgUUFjdGlvbiogbmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6TmF2aWdhdGlvbkFjdGlv
biB3aGljaCk7CisKIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIFdlYktpdDo6VG91Y2hWaWV3
SW50ZXJmYWNlOwogICAgIFFUb3VjaFdlYlZpZXdQcml2YXRlICpkOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Via2l0dHlwZXMuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYmtpdHR5cGVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uNmI0ZTE5YQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXdlYmtpdHR5cGVzLmgKQEAgLTAsMCArMSwzNyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAxMSBBbmRyZWFzIEtsaW5nIDxrbGluZ0B3ZWJraXQub3JnPgorICoK
KyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3Ig
KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0g
aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1
dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5
IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBt
b3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0
aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlz
IHByb2dyYW07IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAq
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwg
RmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyAqCisgKi8KKwor
I2lmbmRlZiBxd2Via2l0dHlwZXNfaAorI2RlZmluZSBxd2Via2l0dHlwZXNfaAorCituYW1lc3Bh
Y2UgUXRXZWJLaXQgeworCitlbnVtIE5hdmlnYXRpb25BY3Rpb24geworICAgIEJhY2ssCisgICAg
Rm9yd2FyZCwKKyAgICBTdG9wLAorICAgIFJlbG9hZCwKKworICAgIE5hdmlnYXRpb25BY3Rpb25D
b3VudAorfTsKKworfQorCisjZW5kaWYgLyogcXdlYmtpdHR5cGVzX2ggKi8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlUHJveHkuY3BwCmluZGV4IGZkNDdhMmEuLjM4
ZWFmM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVByb3h5
LmNwcApAQCAtNjUwLDYgKzY1MCwyMiBAQCB2b2lkIFF0V2ViUGFnZVByb3h5Ojp0cmlnZ2VyQWN0
aW9uKFdlYkFjdGlvbiB3ZWJBY3Rpb24sIGJvb2wpCiAgICAgbV93ZWJQYWdlUHJveHktPmNvbnRl
eHRNZW51SXRlbVNlbGVjdGVkKG1lbnVJdGVtRGF0YSk7CiB9CiAKK1FBY3Rpb24qIFF0V2ViUGFn
ZVByb3h5OjpuYXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uIHdoaWNo
KSBjb25zdAoreworICAgIHN3aXRjaCAod2hpY2gpIHsKKyAgICBjYXNlIFF0V2ViS2l0OjpCYWNr
OgorICAgICAgICByZXR1cm4gYWN0aW9uKFF0V2ViUGFnZVByb3h5OjpCYWNrKTsKKyAgICBjYXNl
IFF0V2ViS2l0OjpGb3J3YXJkOgorICAgICAgICByZXR1cm4gYWN0aW9uKFF0V2ViUGFnZVByb3h5
OjpGb3J3YXJkKTsKKyAgICBjYXNlIFF0V2ViS2l0OjpSZWxvYWQ6CisgICAgICAgIHJldHVybiBh
Y3Rpb24oUXRXZWJQYWdlUHJveHk6OlJlbG9hZCk7CisgICAgY2FzZSBRdFdlYktpdDo6U3RvcDoK
KyAgICAgICAgcmV0dXJuIGFjdGlvbihRdFdlYlBhZ2VQcm94eTo6U3RvcCk7CisgICAgfQorCisg
ICAgcmV0dXJuIDA7Cit9CisKIFFBY3Rpb24qIFF0V2ViUGFnZVByb3h5OjphY3Rpb24oV2ViQWN0
aW9uIGFjdGlvbikgY29uc3QKIHsKICAgICBpZiAoYWN0aW9uID09IFF0V2ViUGFnZVByb3h5OjpO
b1dlYkFjdGlvbiB8fCBhY3Rpb24gPj0gV2ViQWN0aW9uQ291bnQpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQcm94eS5oCmluZGV4IDIzMmUwNGYuLjQxYmU1MmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQcm94eS5oCkBAIC0yNSw2
ICsyNSw3IEBACiAKICNpbmNsdWRlICJMYXllclRyZWVDb250ZXh0LmgiCiAjaW5jbHVkZSAiUGFn
ZUNsaWVudC5oIgorI2luY2x1ZGUgInF3ZWJraXR0eXBlcy5oIgogI2luY2x1ZGUgIlNoYXJlYWJs
ZUJpdG1hcC5oIgogI2luY2x1ZGUgIlZpZXdwb3J0QXJndW1lbnRzLmgiCiAjaW5jbHVkZSAiVmll
d0ludGVyZmFjZS5oIgpAQCAtMTcyLDYgKzE3Myw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0
UmVzaXplc1RvQ29udGVudHNVc2luZ0xheW91dFNpemUoY29uc3QgUVNpemUmIHRhcmdldExheW91
dFNpemUpOwogCisgICAgUUFjdGlvbiogbmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6TmF2aWdh
dGlvbkFjdGlvbikgY29uc3Q7CisKICAgICBRQWN0aW9uKiBhY3Rpb24oV2ViQWN0aW9uIGFjdGlv
bikgY29uc3Q7CiAgICAgdm9pZCB0cmlnZ2VyQWN0aW9uKFdlYkFjdGlvbiBhY3Rpb24sIGJvb2wg
Y2hlY2tlZCA9IGZhbHNlKTsKICAgICB2b2lkIHNldENyZWF0ZU5ld1BhZ2VGdW5jdGlvbihDcmVh
dGVOZXdQYWdlRm4gZnVuY3Rpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViS2l0
MkFQSS5wcmkgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyQVBJLnByaQppbmRleCA2MDFkZjA3Li5l
Y2EyMGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyQVBJLnByaQorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJLaXQyQVBJLnByaQpAQCAtMTI1LDYgKzEyNSw3IEBAIFdFQktJVDJf
QVBJX0hFQURFUlMgKz0gXAogICAgICQkU09VUkNFX0RJUi9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXRvdWNod2VicGFnZV9wLmggXAogICAgICQkU09VUkNFX0RJUi9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXRvdWNod2Vidmlldy5oIFwKICAgICAkJFNPVVJDRV9ESVIvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3F0b3VjaHdlYnZpZXdfcC5oIFwKKyAgICAkJFNPVVJDRV9ESVIvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJraXR0eXBlcy5oIFwKICAgICAkJFNPVVJDRV9ESVIvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlQmFja0ZvcndhcmRM
aXN0LmggXAogICAgICQkU09VUkNFX0RJUi9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL2MvV0tCdW5kbGVCYWNrRm9yd2FyZExpc3RJdGVtLmggXAogICAgICQkU09VUkNFX0RJ
Ui9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVIaXRUZXN0
UmVzdWx0LmggXApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9n
CmluZGV4IDU3ZWVhM2YuLjdhMzQ1MjkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysg
Yi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMS0wNy0wOCAgQW5kcmVhcyBL
bGluZyAgPGtsaW5nQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW1F0XVtXSzJdIFZpZXdzIHNob3Vs
ZCBleHBvc2UgUUFjdGlvbnMgZm9yIGJhc2ljIG5hdmlnYXRpb24uCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDE3NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJyaW5nIHRoZSB0b29sYmFyIGluIFF0J3Mg
TWluaUJyb3dzZXIgYmFjayB0byBsaWZlLgorCisgICAgICAgICogTWluaUJyb3dzZXIvcXQvQnJv
d3NlclZpZXcuY3BwOgorICAgICAgICAoQnJvd3NlclZpZXc6Om5hdmlnYXRpb25BY3Rpb24pOgor
ICAgICAgICAqIE1pbmlCcm93c2VyL3F0L0Jyb3dzZXJWaWV3Lmg6CisgICAgICAgICogTWluaUJy
b3dzZXIvcXQvQnJvd3NlcldpbmRvdy5jcHA6CisgICAgICAgIChCcm93c2VyV2luZG93OjpCcm93
c2VyV2luZG93KToKKwogMjAxMS0wNy0wOCAgSGVyY3plZyBab2x0YW4gIDx6aGVyY3plZ0B3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFuZHJlYXMgS2xpbmcuCmRpZmYgLS1naXQg
YS9Ub29scy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyVmlldy5jcHAgYi9Ub29scy9NaW5pQnJvd3Nl
ci9xdC9Ccm93c2VyVmlldy5jcHAKaW5kZXggNWIyYThlZC4uMWZhNjljMiAxMDA2NDQKLS0tIGEv
VG9vbHMvTWluaUJyb3dzZXIvcXQvQnJvd3NlclZpZXcuY3BwCisrKyBiL1Rvb2xzL01pbmlCcm93
c2VyL3F0L0Jyb3dzZXJWaWV3LmNwcApAQCAtODgsMyArODgsMTMgQEAgUURlc2t0b3BXZWJWaWV3
KiBCcm93c2VyVmlldzo6ZGVza3RvcFdlYlZpZXcoKSBjb25zdAogewogICAgIHJldHVybiBxb2Jq
ZWN0X2Nhc3Q8UURlc2t0b3BXZWJWaWV3Kj4obV9pdGVtKTsKIH0KKworUUFjdGlvbiogQnJvd3Nl
clZpZXc6Om5hdmlnYXRpb25BY3Rpb24oUXRXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb24gd2hpY2gp
IGNvbnN0Cit7CisgICAgaWYgKGRlc2t0b3BXZWJWaWV3KCkpCisgICAgICAgIHJldHVybiBkZXNr
dG9wV2ViVmlldygpLT5uYXZpZ2F0aW9uQWN0aW9uKHdoaWNoKTsKKyAgICBpZiAodG91Y2hXZWJW
aWV3KCkpCisgICAgICAgIHJldHVybiB0b3VjaFdlYlZpZXcoKS0+bmF2aWdhdGlvbkFjdGlvbih3
aGljaCk7CisgICAgUV9BU1NFUlQoMCk7CisgICAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9U
b29scy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyVmlldy5oIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQv
QnJvd3NlclZpZXcuaAppbmRleCA2MTU0MmMzLi5iYjRhYWVkIDEwMDY0NAotLS0gYS9Ub29scy9N
aW5pQnJvd3Nlci9xdC9Ccm93c2VyVmlldy5oCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L0Jy
b3dzZXJWaWV3LmgKQEAgLTMwLDYgKzMwLDcgQEAKICNkZWZpbmUgQnJvd3NlclZpZXdfaAogCiAj
aW5jbHVkZSA8UUdyYXBoaWNzVmlldz4KKyNpbmNsdWRlIDxxd2Via2l0dHlwZXMuaD4KIAogY2xh
c3MgUURlc2t0b3BXZWJWaWV3OwogY2xhc3MgUVRvdWNoV2ViVmlldzsKQEAgLTQ0LDYgKzQ1LDgg
QEAgcHVibGljOgogICAgIHZvaWQgbG9hZChjb25zdCBRU3RyaW5nJik7CiAgICAgUUdyYXBoaWNz
V2lkZ2V0KiB2aWV3KCkgY29uc3Q7CiAKKyAgICBRQWN0aW9uKiBuYXZpZ2F0aW9uQWN0aW9uKFF0
V2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uIHdoaWNoKSBjb25zdDsKKwogICAgIFFUb3VjaFdlYlZp
ZXcqIHRvdWNoV2ViVmlldygpIGNvbnN0OwogICAgIFFEZXNrdG9wV2ViVmlldyogZGVza3RvcFdl
YlZpZXcoKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvQnJvd3Nl
cldpbmRvdy5jcHAgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyV2luZG93LmNwcAppbmRl
eCBkMGVkZmM2Li5jNDA2ZmM5IDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9Ccm93
c2VyV2luZG93LmNwcAorKysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyV2luZG93LmNw
cApAQCAtMTI3LDEyICsxMjcsMTAgQEAgQnJvd3NlcldpbmRvdzo6QnJvd3NlcldpbmRvdyhXaW5k
b3dPcHRpb25zKiBvcHRpb25zKQogICAgIGNvbm5lY3QobV9hZGRyZXNzQmFyLCBTSUdOQUwocmV0
dXJuUHJlc3NlZCgpKSwgU0xPVChjaGFuZ2VMb2NhdGlvbigpKSk7CiAKICAgICBRVG9vbEJhciog
YmFyID0gYWRkVG9vbEJhcigiTmF2aWdhdGlvbiIpOwotI2lmIDAKLSAgICBiYXItPmFkZEFjdGlv
bihwYWdlKCktPmFjdGlvbihRV0tQYWdlOjpCYWNrKSk7Ci0gICAgYmFyLT5hZGRBY3Rpb24ocGFn
ZSgpLT5hY3Rpb24oUVdLUGFnZTo6Rm9yd2FyZCkpOwotICAgIGJhci0+YWRkQWN0aW9uKHBhZ2Uo
KS0+YWN0aW9uKFFXS1BhZ2U6OlJlbG9hZCkpOwotICAgIGJhci0+YWRkQWN0aW9uKHBhZ2UoKS0+
YWN0aW9uKFFXS1BhZ2U6OlN0b3ApKTsKLSNlbmRpZgorICAgIGJhci0+YWRkQWN0aW9uKG1fYnJv
d3Nlci0+bmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6QmFjaykpOworICAgIGJhci0+YWRkQWN0
aW9uKG1fYnJvd3Nlci0+bmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6Rm9yd2FyZCkpOworICAg
IGJhci0+YWRkQWN0aW9uKG1fYnJvd3Nlci0+bmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6UmVs
b2FkKSk7CisgICAgYmFyLT5hZGRBY3Rpb24obV9icm93c2VyLT5uYXZpZ2F0aW9uQWN0aW9uKFF0
V2ViS2l0OjpTdG9wKSk7CiAgICAgYmFyLT5hZGRXaWRnZXQobV9hZGRyZXNzQmFyKTsKIAogICAg
IFFTaG9ydGN1dCogc2VsZWN0QWRkcmVzc0JhciA9IG5ldyBRU2hvcnRjdXQoUXQ6OkNUUkwgfCBR
dDo6S2V5X0wsIHRoaXMpOwo=
</data>
<flag name="review"
          id="94763"
          type_id="1"
          status="-"
          setter="benjamin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100136</attachid>
            <date>2011-07-08 11:08:14 -0700</date>
            <delta_ts>2011-07-08 11:29:11 -0700</delta_ts>
            <desc>Proposed patch v2</desc>
            <filename>bug-64174-v2.diff</filename>
            <type>text/plain</type>
            <size>16311</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBlZGY5N2E0Li43ZDcwZjIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEg
QEAKKzIwMTEtMDctMDggIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgorCisgICAg
ICAgIEFkZCBuYXZpZ2F0aW9uQWN0aW9uKCkgbWV0aG9kcyB0byB0aGUgdmlld3MgdG8gcHJvdmlk
ZSBkZWZhdWx0CisgICAgICAgIFFBY3Rpb25zIGZvciBCYWNrLCBGb3J3YXJkLCBTdG9wIGFuZCBS
ZWxvYWQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL3F0L1dLVmlldy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQv
cWRlc2t0b3B3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFEZXNrdG9wV2ViVmlldzo6bmF2aWdhdGlv
bkFjdGlvbik6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xZGVza3RvcHdlYnZpZXcuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3F0b3VjaHdlYnBhZ2UuY3BwOgorICAgICAgICAo
UVRvdWNoV2ViUGFnZTo6bmF2aWdhdGlvbkFjdGlvbik6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9xdC9xdG91Y2h3ZWJwYWdlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xd2Via2l0
dHlwZXMuaDogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9jb21tb252
aWV3dGVzdHMvdHN0X2NvbW1vbnZpZXd0ZXN0cy5jcHA6CisgICAgICAgICh0c3RfQ29tbW9uVmll
d1Rlc3RzOjpiYWNrQW5kRm9yd2FyZCk6CisgICAgICAgICh0c3RfQ29tbW9uVmlld1Rlc3RzOjpy
ZWxvYWQpOgorICAgICAgICAodHN0X0NvbW1vblZpZXdUZXN0czo6c3RvcCk6CisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9jb21tb252aWV3dGVzdHMvd2Vidmlld2Fic3RyYWN0aW9u
LmNwcDoKKyAgICAgICAgKFdlYlZpZXdBYnN0cmFjdGlvbjo6dHJpZ2dlck5hdmlnYXRpb25BY3Rp
b24pOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvY29tbW9udmlld3Rlc3RzL3dl
YnZpZXdhYnN0cmFjdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvaHRt
bC9iYXNpY19wYWdlMi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRXZWJQ
YWdlUHJveHkuY3BwOgorICAgICAgICAoUXRXZWJQYWdlUHJveHk6Om5hdmlnYXRpb25BY3Rpb24p
OgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFdl
YktpdDJBUEkucHJpOgorCiAyMDExLTA3LTA4ICBCZW5qYW1pbiBQb3VsYWluICA8YmVuamFtaW5A
d2Via2l0Lm9yZz4KIAogICAgICAgICBbV0syXSBEbyBub3QgZm9yd2FyZCB0b3VjaCBldmVudHMg
dG8gdGhlIHdlYiBwcm9jZXNzIHdoZW4gaXQgZG9lcyBub3QgbmVlZCB0aGVtCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L1dLVmlldy5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9XS1ZpZXcuaAppbmRleCAwZmQ2ZjAxLi4wYjJlMGE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L1dLVmlldy5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvV0tWaWV3LmgKQEAgLTIwLDYgKzIwLDcgQEAK
ICNpZm5kZWYgV0tWaWV3X2gKICNkZWZpbmUgV0tWaWV3X2gKIAorI2luY2x1ZGUgPFdlYktpdDIv
cXdlYmtpdHR5cGVzLmg+CiAjaW5jbHVkZSA8V2ViS2l0Mi9xZGVza3RvcHdlYnZpZXcuaD4KICNp
bmNsdWRlIDxXZWJLaXQyL3F0b3VjaHdlYnZpZXcuaD4KICNpbmNsdWRlIDxXZWJLaXQyL3F0b3Vj
aHdlYnBhZ2UuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cWRlc2t0b3B3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcWRl
c2t0b3B3ZWJ2aWV3LmNwcAppbmRleCA3NjEyZWVjLi43ODEzZWQ2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FkZXNrdG9wd2Vidmlldy5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xZGVza3RvcHdlYnZpZXcuY3BwCkBAIC0xODQs
NiArMTg0LDExIEBAIFFTdHJpbmcgUURlc2t0b3BXZWJWaWV3Ojp0aXRsZSgpIGNvbnN0CiAgICAg
cmV0dXJuIGQtPnBhZ2UudGl0bGUoKTsKIH0KIAorUUFjdGlvbiogUURlc2t0b3BXZWJWaWV3Ojpu
YXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uIHdoaWNoKSBjb25zdAor
eworICAgIHJldHVybiBkLT5wYWdlLm5hdmlnYXRpb25BY3Rpb24od2hpY2gpOworfQorCiB2b2lk
IFFEZXNrdG9wV2ViVmlldzo6cmVzaXplRXZlbnQoUUdyYXBoaWNzU2NlbmVSZXNpemVFdmVudCog
ZXYpCiB7CiAgICAgZC0+cGFnZS5zZXREcmF3aW5nQXJlYVNpemUoZXYtPm5ld1NpemUoKS50b1Np
emUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FkZXNr
dG9wd2Vidmlldy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xZGVza3RvcHdl
YnZpZXcuaAppbmRleCAwN2RmMjFlLi5mMDlkZDc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FkZXNrdG9wd2Vidmlldy5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcWRlc2t0b3B3ZWJ2aWV3LmgKQEAgLTIyLDYgKzIyLDcgQEAKICNk
ZWZpbmUgcWRlc2t0b3B3ZWJ2aWV3X2gKIAogI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIKKyNp
bmNsdWRlICJxd2Via2l0dHlwZXMuaCIKICNpbmNsdWRlIDxXZWJLaXQyL1dLQmFzZS5oPgogCiAj
aW5jbHVkZSA8UUdyYXBoaWNzV2lkZ2V0PgpAQCAtNDUsNiArNDYsOCBAQCBwdWJsaWM6CiAgICAg
UVVybCB1cmwoKSBjb25zdDsKICAgICBRU3RyaW5nIHRpdGxlKCkgY29uc3Q7CiAKKyAgICBRQWN0
aW9uKiBuYXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uIHdoaWNoKSBj
b25zdDsKKwogcHVibGljIFFfU0xPVFM6CiAgICAgIHZvaWQgbG9hZChjb25zdCBRVXJsJik7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNod2VicGFn
ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F0b3VjaHdlYnBhZ2UuY3Bw
CmluZGV4IDEzMDhhZDEuLmE0ZDQ1NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXRvdWNod2VicGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xdG91Y2h3ZWJwYWdlLmNwcApAQCAtMTQxLDYgKzE0MSwxMSBAQCB2b2lkIFFU
b3VjaFdlYlBhZ2U6OnJlc2l6ZUV2ZW50KFFHcmFwaGljc1NjZW5lUmVzaXplRXZlbnQqIGV2KQog
ICAgIFFHcmFwaGljc1dpZGdldDo6cmVzaXplRXZlbnQoZXYpOwogfQogCitRQWN0aW9uKiBRVG91
Y2hXZWJQYWdlOjpuYXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uIHdo
aWNoKQoreworICAgIHJldHVybiBkLT5wYWdlLT5uYXZpZ2F0aW9uQWN0aW9uKHdoaWNoKTsKK30K
KwogUVRvdWNoV2ViUGFnZVByaXZhdGU6OlFUb3VjaFdlYlBhZ2VQcml2YXRlKFFUb3VjaFdlYlBh
Z2UqIHZpZXcpCiAgICAgOiBxKHZpZXcpCiAgICAgLCBwYWdlKDApCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F0b3VjaHdlYnBhZ2UuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNod2VicGFnZS5oCmluZGV4IDI1YjIwZDQuLmE4OGVj
YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNod2Vi
cGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNod2VicGFn
ZS5oCkBAIC0yMiw2ICsyMiw3IEBACiAjZGVmaW5lIHF0b3VjaHdlYnBhZ2VfaAogCiAjaW5jbHVk
ZSAicXdlYmtpdGdsb2JhbC5oIgorI2luY2x1ZGUgInF3ZWJraXR0eXBlcy5oIgogCiAjaW5jbHVk
ZSA8UUdyYXBoaWNzV2lkZ2V0PgogI2luY2x1ZGUgPFFTaGFyZWRQb2ludGVyPgpAQCAtNDgsNiAr
NDksOCBAQCBwdWJsaWM6CiAKICAgICBRX0lOVk9LQUJMRSBRU3RyaW5nIHRpdGxlKCkgY29uc3Q7
CiAKKyAgICBRQWN0aW9uKiBuYXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpOYXZpZ2F0aW9uQWN0
aW9uIHdoaWNoKTsKKwogICAgIHZpcnR1YWwgdm9pZCBwYWludChRUGFpbnRlciosIGNvbnN0IFFT
dHlsZU9wdGlvbkdyYXBoaWNzSXRlbSosIFFXaWRnZXQqKTsKICAgICB2aXJ0dWFsIGJvb2wgZXZl
bnQoUUV2ZW50Kik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXdlYmtpdHR5cGVzLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJr
aXR0eXBlcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZiNGUxOWEKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJraXR0
eXBlcy5oCkBAIC0wLDAgKzEsMzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQW5kcmVh
cyBLbGluZyA8a2xpbmdAd2Via2l0Lm9yZz4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisg
KiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy
IHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl
IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp
dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9y
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBz
aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBzZWUgdGhlIGZpbGUgQ09Q
WUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9uLCBN
QSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgcXdlYmtpdHR5cGVzX2gKKyNk
ZWZpbmUgcXdlYmtpdHR5cGVzX2gKKworbmFtZXNwYWNlIFF0V2ViS2l0IHsKKworZW51bSBOYXZp
Z2F0aW9uQWN0aW9uIHsKKyAgICBCYWNrLAorICAgIEZvcndhcmQsCisgICAgU3RvcCwKKyAgICBS
ZWxvYWQsCisKKyAgICBOYXZpZ2F0aW9uQWN0aW9uQ291bnQKK307CisKK30KKworI2VuZGlmIC8q
IHF3ZWJraXR0eXBlc19oICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3Rlc3RzL2NvbW1vbnZpZXd0ZXN0cy90c3RfY29tbW9udmlld3Rlc3RzLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvY29tbW9udmlld3Rlc3RzL3RzdF9j
b21tb252aWV3dGVzdHMuY3BwCmluZGV4IDlhNTRjOTcuLmJiZDY3MDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvY29tbW9udmlld3Rlc3RzL3RzdF9j
b21tb252aWV3dGVzdHMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
dGVzdHMvY29tbW9udmlld3Rlc3RzL3RzdF9jb21tb252aWV3dGVzdHMuY3BwCkBAIC0zMyw2ICsz
Myw5IEBAIHByaXZhdGUgc2xvdHM6CiAgICAgdm9pZCBsb2FkRW1wdHlVcmwoKTsKICAgICB2b2lk
IGxvYWRFbXB0eVBhZ2VWaWV3VmlzaWJsZSgpOwogICAgIHZvaWQgbG9hZEVtcHR5UGFnZVZpZXdI
aWRkZW4oKTsKKyAgICB2b2lkIGJhY2tBbmRGb3J3YXJkKCk7CisgICAgdm9pZCByZWxvYWQoKTsK
KyAgICB2b2lkIHN0b3AoKTsKIAogICAgIHZvaWQgc2hvdygpOwogcHJpdmF0ZToKQEAgLTc5LDYg
KzgyLDYzIEBAIHZvaWQgdHN0X0NvbW1vblZpZXdUZXN0czo6bG9hZEVtcHR5UGFnZVZpZXdIaWRk
ZW4oKQogICAgIFFDT01QQVJFKGxvYWRTdGFydGVkU3B5LnNpemUoKSwgMSk7CiB9CiAKK3ZvaWQg
dHN0X0NvbW1vblZpZXdUZXN0czo6YmFja0FuZEZvcndhcmQoKQoreworICAgIHZpZXdBYnN0cmFj
dGlvbi0+bG9hZChRVXJsOjpmcm9tTG9jYWxGaWxlKFFMYXRpbjFTdHJpbmcoVEVTVFNfU09VUkNF
X0RJUiAiL2h0bWwvYmFzaWNfcGFnZS5odG1sIikpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JTaWdu
YWwodmlld0Fic3RyYWN0aW9uLmRhdGEoKSwgU0lHTkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsKKwor
ICAgIFFVcmwgdXJsOworICAgIFFWRVJJRlkodmlld0Fic3RyYWN0aW9uLT51cmwodXJsKSk7Cisg
ICAgUUNPTVBBUkUodXJsLnBhdGgoKSwgUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIv
aHRtbC9iYXNpY19wYWdlLmh0bWwiKSk7CisKKyAgICB2aWV3QWJzdHJhY3Rpb24tPmxvYWQoUVVy
bDo6ZnJvbUxvY2FsRmlsZShRTGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jh
c2ljX3BhZ2UyLmh0bWwiKSkpOworICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh2aWV3QWJzdHJh
Y3Rpb24uZGF0YSgpLCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworCisgICAgUVZFUklGWSh2
aWV3QWJzdHJhY3Rpb24tPnVybCh1cmwpKTsKKyAgICBRQ09NUEFSRSh1cmwucGF0aCgpLCBRTGF0
aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UyLmh0bWwiKSk7CisK
KyAgICB2aWV3QWJzdHJhY3Rpb24tPnRyaWdnZXJOYXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpC
YWNrKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwodmlld0Fic3RyYWN0aW9uLmRhdGEoKSwg
U0lHTkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsKKworICAgIFFWRVJJRlkodmlld0Fic3RyYWN0aW9u
LT51cmwodXJsKSk7CisgICAgUUNPTVBBUkUodXJsLnBhdGgoKSwgUUxhdGluMVN0cmluZyhURVNU
U19TT1VSQ0VfRElSICIvaHRtbC9iYXNpY19wYWdlLmh0bWwiKSk7CisKKyAgICB2aWV3QWJzdHJh
Y3Rpb24tPnRyaWdnZXJOYXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpGb3J3YXJkKTsKKyAgICBR
VkVSSUZZKHdhaXRGb3JTaWduYWwodmlld0Fic3RyYWN0aW9uLmRhdGEoKSwgU0lHTkFMKGxvYWRT
dWNjZWVkZWQoKSkpKTsKKworICAgIFFWRVJJRlkodmlld0Fic3RyYWN0aW9uLT51cmwodXJsKSk7
CisgICAgUUNPTVBBUkUodXJsLnBhdGgoKSwgUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElS
ICIvaHRtbC9iYXNpY19wYWdlMi5odG1sIikpOworfQorCit2b2lkIHRzdF9Db21tb25WaWV3VGVz
dHM6OnJlbG9hZCgpCit7CisgICAgdmlld0Fic3RyYWN0aW9uLT5sb2FkKFFVcmw6OmZyb21Mb2Nh
bEZpbGUoUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIvaHRtbC9iYXNpY19wYWdlLmh0
bWwiKSkpOworICAgIFFWRVJJRlkod2FpdEZvclNpZ25hbCh2aWV3QWJzdHJhY3Rpb24uZGF0YSgp
LCBTSUdOQUwobG9hZFN1Y2NlZWRlZCgpKSkpOworCisgICAgUVVybCB1cmw7CisgICAgUVZFUklG
WSh2aWV3QWJzdHJhY3Rpb24tPnVybCh1cmwpKTsKKyAgICBRQ09NUEFSRSh1cmwucGF0aCgpLCBR
TGF0aW4xU3RyaW5nKFRFU1RTX1NPVVJDRV9ESVIgIi9odG1sL2Jhc2ljX3BhZ2UuaHRtbCIpKTsK
KworICAgIHZpZXdBYnN0cmFjdGlvbi0+dHJpZ2dlck5hdmlnYXRpb25BY3Rpb24oUXRXZWJLaXQ6
OlJlbG9hZCk7CisgICAgUVZFUklGWSh3YWl0Rm9yU2lnbmFsKHZpZXdBYnN0cmFjdGlvbi5kYXRh
KCksIFNJR05BTChsb2FkU3VjY2VlZGVkKCkpKSk7CisKKyAgICBRVkVSSUZZKHZpZXdBYnN0cmFj
dGlvbi0+dXJsKHVybCkpOworICAgIFFDT01QQVJFKHVybC5wYXRoKCksIFFMYXRpbjFTdHJpbmco
VEVTVFNfU09VUkNFX0RJUiAiL2h0bWwvYmFzaWNfcGFnZS5odG1sIikpOworfQorCit2b2lkIHRz
dF9Db21tb25WaWV3VGVzdHM6OnN0b3AoKQoreworICAgIHZpZXdBYnN0cmFjdGlvbi0+bG9hZChR
VXJsOjpmcm9tTG9jYWxGaWxlKFFMYXRpbjFTdHJpbmcoVEVTVFNfU09VUkNFX0RJUiAiL2h0bWwv
YmFzaWNfcGFnZS5odG1sIikpKTsKKyAgICBRVkVSSUZZKHdhaXRGb3JTaWduYWwodmlld0Fic3Ry
YWN0aW9uLmRhdGEoKSwgU0lHTkFMKGxvYWRTdWNjZWVkZWQoKSkpKTsKKworICAgIFFVcmwgdXJs
OworICAgIFFWRVJJRlkodmlld0Fic3RyYWN0aW9uLT51cmwodXJsKSk7CisgICAgUUNPTVBBUkUo
dXJsLnBhdGgoKSwgUUxhdGluMVN0cmluZyhURVNUU19TT1VSQ0VfRElSICIvaHRtbC9iYXNpY19w
YWdlLmh0bWwiKSk7CisKKyAgICAvLyBGSVhNRTogVGhpcyB0ZXN0IHNob3VsZCBiZSBmbGVzaGVk
IG91dC4gUmlnaHQgbm93IGl0J3MganVzdCBoZXJlIHRvIG1ha2Ugc3VyZSB3ZSBkb24ndCBjcmFz
aC4KKyAgICB2aWV3QWJzdHJhY3Rpb24tPnRyaWdnZXJOYXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0
OjpTdG9wKTsKK30KKwogdm9pZCB0c3RfQ29tbW9uVmlld1Rlc3RzOjpzaG93KCkKIHsKICAgICAv
LyBUaGlzIHNob3VsZCBub3QgY3Jhc2guCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3Rlc3RzL2NvbW1vbnZpZXd0ZXN0cy93ZWJ2aWV3YWJzdHJhY3Rpb24uY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9jb21tb252aWV3dGVzdHMv
d2Vidmlld2Fic3RyYWN0aW9uLmNwcAppbmRleCAxZmVhMDgyLi4zZGFlN2EyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL2NvbW1vbnZpZXd0ZXN0cy93
ZWJ2aWV3YWJzdHJhY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvdGVzdHMvY29tbW9udmlld3Rlc3RzL3dlYnZpZXdhYnN0cmFjdGlvbi5jcHAKQEAgLTE3LDYg
KzE3LDcgQEAKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KICovCiAKKyNpbmNsdWRl
IDxRQWN0aW9uPgogI2luY2x1ZGUgPFFBcHBsaWNhdGlvbj4KICNpbmNsdWRlIDxRRGVza3RvcFdp
ZGdldD4KICNpbmNsdWRlICJ3ZWJ2aWV3YWJzdHJhY3Rpb24uaCIKQEAgLTc2LDYgKzc3LDE0IEBA
IGJvb2wgV2ViVmlld0Fic3RyYWN0aW9uOjp1cmwoUVVybCYgdXJsKSBjb25zdAogICAgIHJldHVy
biB0cnVlOwogfQogCit2b2lkIFdlYlZpZXdBYnN0cmFjdGlvbjo6dHJpZ2dlck5hdmlnYXRpb25B
Y3Rpb24oUXRXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb24gd2hpY2gpCit7CisgICAgUUFjdGlvbiog
dG91Y2hBY3Rpb24gPSB0b3VjaFdlYlZpZXcoKS0+cGFnZSgpLT5uYXZpZ2F0aW9uQWN0aW9uKHdo
aWNoKTsKKyAgICB0b3VjaEFjdGlvbi0+dHJpZ2dlcigpOworICAgIFFBY3Rpb24qIGRlc2t0b3BB
Y3Rpb24gPSBkZXNrdG9wV2ViVmlldygpLT5uYXZpZ2F0aW9uQWN0aW9uKHdoaWNoKTsKKyAgICBk
ZXNrdG9wQWN0aW9uLT50cmlnZ2VyKCk7Cit9CisKIHZvaWQgV2ViVmlld0Fic3RyYWN0aW9uOjp0
b3VjaFZpZXdMb2FkU3RhcnRlZCgpCiB7CiAgICAgbV90b3VjaFZpZXdTaWduYWxzQ291bnRlcltT
SUdOQUwobG9hZFN0YXJ0ZWQoKSldKys7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3Rlc3RzL2NvbW1vbnZpZXd0ZXN0cy93ZWJ2aWV3YWJzdHJhY3Rpb24uaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvY29tbW9udmlld3Rlc3RzL3dl
YnZpZXdhYnN0cmFjdGlvbi5oCmluZGV4IDA1OGVmOGUuLmI4ODE2NDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvY29tbW9udmlld3Rlc3RzL3dlYnZp
ZXdhYnN0cmFjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVz
dHMvY29tbW9udmlld3Rlc3RzL3dlYnZpZXdhYnN0cmFjdGlvbi5oCkBAIC00MCw2ICs0MCw4IEBA
IHB1YmxpYzoKICAgICB2b2lkIGxvYWQoY29uc3QgUVVybCYpOwogICAgIGJvb2wgdXJsKFFVcmwm
KSBjb25zdDsKIAorICAgIHZvaWQgdHJpZ2dlck5hdmlnYXRpb25BY3Rpb24oUXRXZWJLaXQ6Ok5h
dmlnYXRpb25BY3Rpb24pOworCiBRX1NJR05BTFM6CiAgICAgdm9pZCBsb2FkU3RhcnRlZCgpOwog
ICAgIHZvaWQgbG9hZFN1Y2NlZWRlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC90ZXN0cy9odG1sL2Jhc2ljX3BhZ2UyLmh0bWwgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL2h0bWwvYmFzaWNfcGFnZTIuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mOGNmZjI5Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9odG1sL2Jhc2ljX3BhZ2UyLmh0bWwK
QEAgLTAsMCArMSBAQAorPGgxPkJhc2ljIHBhZ2UgMjwvaDE+CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL3F0L1F0V2ViUGFnZVByb3h5LmNwcAppbmRleCBmZDQ3YTJhLi4zOGVhZjNiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlUHJveHkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQcm94eS5jcHAKQEAg
LTY1MCw2ICs2NTAsMjIgQEAgdm9pZCBRdFdlYlBhZ2VQcm94eTo6dHJpZ2dlckFjdGlvbihXZWJB
Y3Rpb24gd2ViQWN0aW9uLCBib29sKQogICAgIG1fd2ViUGFnZVByb3h5LT5jb250ZXh0TWVudUl0
ZW1TZWxlY3RlZChtZW51SXRlbURhdGEpOwogfQogCitRQWN0aW9uKiBRdFdlYlBhZ2VQcm94eTo6
bmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbiB3aGljaCkgY29uc3QK
K3sKKyAgICBzd2l0Y2ggKHdoaWNoKSB7CisgICAgY2FzZSBRdFdlYktpdDo6QmFjazoKKyAgICAg
ICAgcmV0dXJuIGFjdGlvbihRdFdlYlBhZ2VQcm94eTo6QmFjayk7CisgICAgY2FzZSBRdFdlYktp
dDo6Rm9yd2FyZDoKKyAgICAgICAgcmV0dXJuIGFjdGlvbihRdFdlYlBhZ2VQcm94eTo6Rm9yd2Fy
ZCk7CisgICAgY2FzZSBRdFdlYktpdDo6UmVsb2FkOgorICAgICAgICByZXR1cm4gYWN0aW9uKFF0
V2ViUGFnZVByb3h5OjpSZWxvYWQpOworICAgIGNhc2UgUXRXZWJLaXQ6OlN0b3A6CisgICAgICAg
IHJldHVybiBhY3Rpb24oUXRXZWJQYWdlUHJveHk6OlN0b3ApOworICAgIH0KKworICAgIHJldHVy
biAwOworfQorCiBRQWN0aW9uKiBRdFdlYlBhZ2VQcm94eTo6YWN0aW9uKFdlYkFjdGlvbiBhY3Rp
b24pIGNvbnN0CiB7CiAgICAgaWYgKGFjdGlvbiA9PSBRdFdlYlBhZ2VQcm94eTo6Tm9XZWJBY3Rp
b24gfHwgYWN0aW9uID49IFdlYkFjdGlvbkNvdW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvcXQvUXRXZWJQYWdlUHJveHkuaAppbmRleCAyMzJlMDRmLi40MWJlNTJjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlUHJveHkuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlUHJveHkuaApAQCAtMjUsNiArMjUsNyBA
QAogCiAjaW5jbHVkZSAiTGF5ZXJUcmVlQ29udGV4dC5oIgogI2luY2x1ZGUgIlBhZ2VDbGllbnQu
aCIKKyNpbmNsdWRlICJxd2Via2l0dHlwZXMuaCIKICNpbmNsdWRlICJTaGFyZWFibGVCaXRtYXAu
aCIKICNpbmNsdWRlICJWaWV3cG9ydEFyZ3VtZW50cy5oIgogI2luY2x1ZGUgIlZpZXdJbnRlcmZh
Y2UuaCIKQEAgLTE3Miw2ICsxNzMsOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldFJlc2l6ZXNU
b0NvbnRlbnRzVXNpbmdMYXlvdXRTaXplKGNvbnN0IFFTaXplJiB0YXJnZXRMYXlvdXRTaXplKTsK
IAorICAgIFFBY3Rpb24qIG5hdmlnYXRpb25BY3Rpb24oUXRXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rp
b24pIGNvbnN0OworCiAgICAgUUFjdGlvbiogYWN0aW9uKFdlYkFjdGlvbiBhY3Rpb24pIGNvbnN0
OwogICAgIHZvaWQgdHJpZ2dlckFjdGlvbihXZWJBY3Rpb24gYWN0aW9uLCBib29sIGNoZWNrZWQg
PSBmYWxzZSk7CiAgICAgdm9pZCBzZXRDcmVhdGVOZXdQYWdlRnVuY3Rpb24oQ3JlYXRlTmV3UGFn
ZUZuIGZ1bmN0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDJBUEkucHJp
IGIvU291cmNlL1dlYktpdDIvV2ViS2l0MkFQSS5wcmkKaW5kZXggNjAxZGYwNy4uZWNhMjBmMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViS2l0MkFQSS5wcmkKKysrIGIvU291cmNlL1dl
YktpdDIvV2ViS2l0MkFQSS5wcmkKQEAgLTEyNSw2ICsxMjUsNyBAQCBXRUJLSVQyX0FQSV9IRUFE
RVJTICs9IFwKICAgICAkJFNPVVJDRV9ESVIvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F0b3Vj
aHdlYnBhZ2VfcC5oIFwKICAgICAkJFNPVVJDRV9ESVIvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3F0b3VjaHdlYnZpZXcuaCBcCiAgICAgJCRTT1VSQ0VfRElSL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9xdG91Y2h3ZWJ2aWV3X3AuaCBcCisgICAgJCRTT1VSQ0VfRElSL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xd2Via2l0dHlwZXMuaCBcCiAgICAgJCRTT1VSQ0VfRElSL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUJhY2tGb3J3YXJkTGlzdC5oIFwK
ICAgICAkJFNPVVJDRV9ESVIvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9j
L1dLQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oIFwKICAgICAkJFNPVVJDRV9ESVIvV2ViS2l0
Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlSGl0VGVzdFJlc3VsdC5o
IFwKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA1
N2VlYTNmLi43YTM0NTI5IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMDctMDggIEFuZHJlYXMgS2xpbmcgIDxr
bGluZ0B3ZWJraXQub3JnPgorCisgICAgICAgIFtRdF1bV0syXSBWaWV3cyBzaG91bGQgZXhwb3Nl
IFFBY3Rpb25zIGZvciBiYXNpYyBuYXZpZ2F0aW9uLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQxNzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBCcmluZyB0aGUgdG9vbGJhciBpbiBRdCdzIE1pbmlCcm93
c2VyIGJhY2sgdG8gbGlmZS4KKworICAgICAgICAqIE1pbmlCcm93c2VyL3F0L0Jyb3dzZXJWaWV3
LmNwcDoKKyAgICAgICAgKEJyb3dzZXJWaWV3OjpuYXZpZ2F0aW9uQWN0aW9uKToKKyAgICAgICAg
KiBNaW5pQnJvd3Nlci9xdC9Ccm93c2VyVmlldy5oOgorICAgICAgICAqIE1pbmlCcm93c2VyL3F0
L0Jyb3dzZXJXaW5kb3cuY3BwOgorICAgICAgICAoQnJvd3NlcldpbmRvdzo6QnJvd3NlcldpbmRv
dyk6CisKIDIwMTEtMDctMDggIEhlcmN6ZWcgWm9sdGFuICA8emhlcmN6ZWdAd2Via2l0Lm9yZz4K
IAogICAgICAgICBSZXZpZXdlZCBieSBBbmRyZWFzIEtsaW5nLgpkaWZmIC0tZ2l0IGEvVG9vbHMv
TWluaUJyb3dzZXIvcXQvQnJvd3NlclZpZXcuY3BwIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvQnJv
d3NlclZpZXcuY3BwCmluZGV4IDViMmE4ZWQuLjFmYTY5YzIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01p
bmlCcm93c2VyL3F0L0Jyb3dzZXJWaWV3LmNwcAorKysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9C
cm93c2VyVmlldy5jcHAKQEAgLTg4LDMgKzg4LDEzIEBAIFFEZXNrdG9wV2ViVmlldyogQnJvd3Nl
clZpZXc6OmRlc2t0b3BXZWJWaWV3KCkgY29uc3QKIHsKICAgICByZXR1cm4gcW9iamVjdF9jYXN0
PFFEZXNrdG9wV2ViVmlldyo+KG1faXRlbSk7CiB9CisKK1FBY3Rpb24qIEJyb3dzZXJWaWV3Ojpu
YXZpZ2F0aW9uQWN0aW9uKFF0V2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uIHdoaWNoKSBjb25zdAor
eworICAgIGlmIChkZXNrdG9wV2ViVmlldygpKQorICAgICAgICByZXR1cm4gZGVza3RvcFdlYlZp
ZXcoKS0+bmF2aWdhdGlvbkFjdGlvbih3aGljaCk7CisgICAgaWYgKHRvdWNoV2ViVmlldygpKQor
ICAgICAgICByZXR1cm4gdG91Y2hXZWJWaWV3KCktPm5hdmlnYXRpb25BY3Rpb24od2hpY2gpOwor
ICAgIFFfQVNTRVJUKDApOworICAgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvVG9vbHMvTWlu
aUJyb3dzZXIvcXQvQnJvd3NlclZpZXcuaCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L0Jyb3dzZXJW
aWV3LmgKaW5kZXggNjE1NDJjMy4uYmI0YWFlZCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dz
ZXIvcXQvQnJvd3NlclZpZXcuaAorKysgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyVmll
dy5oCkBAIC0zMCw2ICszMCw3IEBACiAjZGVmaW5lIEJyb3dzZXJWaWV3X2gKIAogI2luY2x1ZGUg
PFFHcmFwaGljc1ZpZXc+CisjaW5jbHVkZSA8cXdlYmtpdHR5cGVzLmg+CiAKIGNsYXNzIFFEZXNr
dG9wV2ViVmlldzsKIGNsYXNzIFFUb3VjaFdlYlZpZXc7CkBAIC00NCw2ICs0NSw4IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGxvYWQoY29uc3QgUVN0cmluZyYpOwogICAgIFFHcmFwaGljc1dpZGdldCog
dmlldygpIGNvbnN0OwogCisgICAgUUFjdGlvbiogbmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6
TmF2aWdhdGlvbkFjdGlvbiB3aGljaCkgY29uc3Q7CisKICAgICBRVG91Y2hXZWJWaWV3KiB0b3Vj
aFdlYlZpZXcoKSBjb25zdDsKICAgICBRRGVza3RvcFdlYlZpZXcqIGRlc2t0b3BXZWJWaWV3KCkg
Y29uc3Q7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L0Jyb3dzZXJXaW5kb3cu
Y3BwIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvQnJvd3NlcldpbmRvdy5jcHAKaW5kZXggZDBlZGZj
Ni4uYzQwNmZjOSAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvQnJvd3NlcldpbmRv
dy5jcHAKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcXQvQnJvd3NlcldpbmRvdy5jcHAKQEAgLTEy
NywxMiArMTI3LDEwIEBAIEJyb3dzZXJXaW5kb3c6OkJyb3dzZXJXaW5kb3coV2luZG93T3B0aW9u
cyogb3B0aW9ucykKICAgICBjb25uZWN0KG1fYWRkcmVzc0JhciwgU0lHTkFMKHJldHVyblByZXNz
ZWQoKSksIFNMT1QoY2hhbmdlTG9jYXRpb24oKSkpOwogCiAgICAgUVRvb2xCYXIqIGJhciA9IGFk
ZFRvb2xCYXIoIk5hdmlnYXRpb24iKTsKLSNpZiAwCi0gICAgYmFyLT5hZGRBY3Rpb24ocGFnZSgp
LT5hY3Rpb24oUVdLUGFnZTo6QmFjaykpOwotICAgIGJhci0+YWRkQWN0aW9uKHBhZ2UoKS0+YWN0
aW9uKFFXS1BhZ2U6OkZvcndhcmQpKTsKLSAgICBiYXItPmFkZEFjdGlvbihwYWdlKCktPmFjdGlv
bihRV0tQYWdlOjpSZWxvYWQpKTsKLSAgICBiYXItPmFkZEFjdGlvbihwYWdlKCktPmFjdGlvbihR
V0tQYWdlOjpTdG9wKSk7Ci0jZW5kaWYKKyAgICBiYXItPmFkZEFjdGlvbihtX2Jyb3dzZXItPm5h
dmlnYXRpb25BY3Rpb24oUXRXZWJLaXQ6OkJhY2spKTsKKyAgICBiYXItPmFkZEFjdGlvbihtX2Jy
b3dzZXItPm5hdmlnYXRpb25BY3Rpb24oUXRXZWJLaXQ6OkZvcndhcmQpKTsKKyAgICBiYXItPmFk
ZEFjdGlvbihtX2Jyb3dzZXItPm5hdmlnYXRpb25BY3Rpb24oUXRXZWJLaXQ6OlJlbG9hZCkpOwor
ICAgIGJhci0+YWRkQWN0aW9uKG1fYnJvd3Nlci0+bmF2aWdhdGlvbkFjdGlvbihRdFdlYktpdDo6
U3RvcCkpOwogICAgIGJhci0+YWRkV2lkZ2V0KG1fYWRkcmVzc0Jhcik7CiAKICAgICBRU2hvcnRj
dXQqIHNlbGVjdEFkZHJlc3NCYXIgPSBuZXcgUVNob3J0Y3V0KFF0OjpDVFJMIHwgUXQ6OktleV9M
LCB0aGlzKTsK
</data>
<flag name="review"
          id="94771"
          type_id="1"
          status="+"
          setter="benjamin"
    />
    <flag name="commit-queue"
          id="94772"
          type_id="3"
          status="-"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>