<?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>193475</bug_id>
          
          <creation_ts>2019-01-15 17:33:01 -0800</creation_ts>
          <short_desc>VisualViewport API should be updated upon opening of keyboard</short_desc>
          <delta_ts>2019-01-18 20:28:22 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=192564</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>170982</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1494934</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-15 17:33:01 -0800</bug_when>
    <thetext>When the user had opened software keyboard, the visual viewport width &amp; height should be updated
and resize event should be dispatched.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494943</commentid>
    <comment_count>1</comment_count>
      <attachid>359234</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-15 17:46:53 -0800</bug_when>
    <thetext>Created attachment 359234
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494963</commentid>
    <comment_count>2</comment_count>
      <attachid>359234</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-01-15 19:06:02 -0800</bug_when>
    <thetext>Comment on attachment 359234
Fixes the bug

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

&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:3044
&gt; +            frameView.didUpdateViewportOverrideRects();

Do we know that the visual viewport actually changed? Perhaps setVisualViewportOverrideRect() should return a bool and we only call this when it changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494966</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-15 19:08:09 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #2)
&gt; Comment on attachment 359234 [details]
&gt; Fixes the bug
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=359234&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:3044
&gt; &gt; +            frameView.didUpdateViewportOverrideRects();
&gt; 
&gt; Do we know that the visual viewport actually changed? Perhaps
&gt; setVisualViewportOverrideRect() should return a bool and we only call this
&gt; when it changes.

VisualViewport::update checks whether the values had changed then schedule resize event, etc... only if the values had changed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494976</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-15 19:18:50 -0800</bug_when>
    <thetext>Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494979</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-01-15 19:19:41 -0800</bug_when>
    <thetext>&lt;rdar://problem/47305687&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494988</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-15 19:36:02 -0800</bug_when>
    <thetext>Committed r240027: &lt;https://trac.webkit.org/changeset/240027&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1495876</commentid>
    <comment_count>7</comment_count>
      <attachid>359234</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2019-01-18 08:58:50 -0800</bug_when>
    <thetext>Comment on attachment 359234
Fixes the bug

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

&gt; Source/WebCore/page/FrameView.h:596
&gt; +#if PLATFORM(IOS_FAMILY)

Can we use a more fine grained #ifdef here? Perhaps something like #if SUPPORTS(VIEWPORTS) or something akin to that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1496172</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-18 20:28:22 -0800</bug_when>
    <thetext>(In reply to Sam Weinig from comment #7)
&gt; Comment on attachment 359234 [details]
&gt; Fixes the bug
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=359234&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/FrameView.h:596
&gt; &gt; +#if PLATFORM(IOS_FAMILY)
&gt; 
&gt; Can we use a more fine grained #ifdef here? Perhaps something like #if
&gt; SUPPORTS(VIEWPORTS) or something akin to that?

I think we can in theory but the code I&apos;m adding is pretty specific to iOS, and as far as I can tell, no other port support this.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>359234</attachid>
            <date>2019-01-15 17:46:53 -0800</date>
            <delta_ts>2019-01-15 19:06:02 -0800</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-193475-20190115174653.patch</filename>
            <type>text/plain</type>
            <size>9771</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5ODcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjdmMzMxMzFjMTdmZjNk
MjFjYjk1MDUxMzgxYzAwZDU4YTYwNTg4OC4uNWJjMjg5NzQyODYwMTBkYjNmOTM2YjJmYjZjNWVh
YzlkMzk1MjJjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE5LTAxLTE1ICBSeW9z
dWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFZpc3VhbFZpZXdwb3J0IEFQ
SSBzaG91bGQgYmUgdXBkYXRlZCB1cG9uIG9wZW5pbmcgb2Yga2V5Ym9hcmQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MzQ3NQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIGEgZnVuY3Rpb24gdG8g
dXBkYXRlIHRoZSB2aXN1YWwgdmlld3BvcnQgQVBJIGFuZCBzY2hlZHVsZSBhIHJlc2l6ZSBldmVu
dCB0byBGcmFtZVZpZXcuCisKKyAgICAgICAgVGVzdDogZmFzdC92aXN1YWwtdmlld3BvcnQvaW9z
L3Jlc2l6ZS1ldmVudC1mb3Ita2V5Ym9hcmQuaHRtbAorCisgICAgICAgICogcGFnZS9GcmFtZVZp
ZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpkaWRVcGRhdGVWaWV3cG9ydE92
ZXJyaWRlUmVjdHMpOgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6CisKIDIwMTktMDEtMTEg
IE1pZ3VlbCBHb21leiAgPG1hZ29tZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBHYXJi
bGVkIHJlbmRlcmluZyBvbiBZb3V0dWJlIHdoaWxlIHNjcm9sbGluZyB1bmRlciBYMTEuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CmluZGV4IGQ1M2NjMzNjNjkyN2U2MWFhNGU2OWRhZTkwZGE4MDUxMjU3ZGU5MjUuLmRiN2E3MDMw
MTQ1Y2M3NzUwMTgyYWViZjNkMDFhYjhhMjVmMjUwMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTktMDEtMTUgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgVmlzdWFsVmlld3BvcnQgQVBJIHNob3VsZCBiZSB1cGRhdGVkIHVwb24gb3BlbmluZyBvZiBr
ZXlib2FyZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTkzNDc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGhlIGJ1ZyB3YXMgY2F1c2VkIGJ5IHRoZSBjaGFuZ2VzIHRvIHVub2JzY3VyZWRDb250ZW50UmVj
dFJlc3BlY3RpbmdJbnB1dFZpZXdCb3VuZHMgbm90IHVwZGF0aW5nIHRoZSB2aXN1YWwgdmlld3Bv
cnQKKyAgICAgICAgdW5sZXNzIGl0IGNhdXNlZCBhIGxheW91dCB0byBoYXBwZW4uIEFkZGVkIGEg
Y29kZSB0byB1cGRhdGUgdGhlIHZpc3VhbCB2aWV3cG9ydCBpbiBXZWJQYWdlOjp1cGRhdGVWaXNp
YmxlQ29udGVudFJlY3RzLgorCisgICAgICAgIEFsc28gZml4ZWQgdGhlIGJ1ZyB0aGF0IFZpc2li
bGVDb250ZW50UmVjdFVwZGF0ZUluZm86Om9wZXJhdG9yPT0gd2FzIG5vdCBjaGVja2luZyBkaWZm
ZXJlbmNlcyBpbgorICAgICAgICB1bm9ic2N1cmVkQ29udGVudFJlY3RSZXNwZWN0aW5nSW5wdXRW
aWV3Qm91bmRzIHdoaWNoIHJlc3VsdGVkIGluIHRoZSB2aXN1YWwgdmlld3BvcnQgb3ZlcnJpZGUg
bm90IGdldHRpbmcgdXBkYXRlZAorICAgICAgICB3aGlsZSB0aGUga2V5Ym9hcmQgaXMgZ2V0dGlu
ZyBicm91Z2h0IHVwLgorCisgICAgICAgICogU2hhcmVkL1Zpc2libGVDb250ZW50UmVjdFVwZGF0
ZUluZm8uaDoKKyAgICAgICAgKFdlYktpdDo6b3BlcmF0b3I9PSk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
Ojp1cGRhdGVWaXNpYmxlQ29udGVudFJlY3RzKToKKwogMjAxOS0wMS0xMSAgV2Vuc29uIEhzaWVo
ICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBJbnRyb2R1Y2UgSURMIGZpbGVz
IGZvciBydW50aW1lLWVuYWJsZWQgVW5kb01hbmFnZXIgYW5kIFVuZG9JdGVtIEphdmFTY3JpcHQg
QVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggZDI1YTdlNjFhN2FlMzRjYjI1N2Ux
NGYwZTUyNWM3Mzk4MjI4MmRlOS4uNGJkZjE2MGVjNmNmM2U1MzBhY2NjZmVlODc5ZTFjMmQyYjRh
YTI5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMjgwMyw2ICsyODAzLDE1IEBA
IHZvaWQgRnJhbWVWaWV3Ojp1cGRhdGVUaWxlZEJhY2tpbmdBZGFwdGl2ZVNpemluZygpCiAKICNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQogCit2b2lkIEZyYW1lVmlldzo6ZGlkVXBkYXRlVmlld3Bv
cnRPdmVycmlkZVJlY3RzKCkKK3sKKyAgICBpZiAoIWZyYW1lKCkuc2V0dGluZ3MoKS52aXN1YWxW
aWV3cG9ydEFQSUVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGF1dG8qIHdp
bmRvdyA9IGZyYW1lKCkud2luZG93KCkpCisgICAgICAgIHdpbmRvdy0+dmlzdWFsVmlld3BvcnQo
KS51cGRhdGUoKTsKK30KKwogdm9pZCBGcmFtZVZpZXc6OnVub2JzY3VyZWRDb250ZW50U2l6ZUNo
YW5nZWQoKQogewogICAgIHVwZGF0ZVRpbGVkQmFja2luZ0FkYXB0aXZlU2l6aW5nKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9GcmFtZVZpZXcuaAppbmRleCAyOTc2YjU2N2RiZjBhMTk3ODliNzZlNjA5YTExN2U2MmI1
MTE4MjViLi4wZDBlMWUyYTJhZmU3NzM5YjUyZDJiZGRmMTkzZTM1OWRiNzkyNDNjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRnJhbWVWaWV3LmgKQEAgLTU5Myw2ICs1OTMsMTAgQEAgcHVibGljOgogICAgIHZvaWQg
dXBkYXRlVGlsZWRCYWNraW5nQWRhcHRpdmVTaXppbmcoKTsKICAgICBUaWxlZEJhY2tpbmc6OlNj
cm9sbGFiaWxpdHkgY29tcHV0ZVNjcm9sbGFiaWxpdHkoKSBjb25zdDsKIAorI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBkaWRVcGRhdGVWaWV3cG9ydE92
ZXJyaWRlUmVjdHMoKTsKKyNlbmRpZgorCiAgICAgdm9pZCBhZGRQYWludFBlbmRpbmdNaWxlc3Rv
bmVzKE9wdGlvblNldDxMYXlvdXRNaWxlc3RvbmU+KTsKICAgICB2b2lkIGZpcmVQYWludFJlbGF0
ZWRNaWxlc3RvbmVzSWZOZWVkZWQoKTsKICAgICB2b2lkIGZpcmVMYXlvdXRSZWxhdGVkTWlsZXN0
b25lc0lmTmVlZGVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9WaXNpYmxl
Q29udGVudFJlY3RVcGRhdGVJbmZvLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9WaXNpYmxlQ29u
dGVudFJlY3RVcGRhdGVJbmZvLmgKaW5kZXggNWYwN2MyYjhhODU5NzBjNmMyZWFkNTQyYWViOWM4
NzA0NDdlZWZhYS4uOTFjMTgyMmE3NGFjZGVmODkwZmU1NjEyMDVmZDFiYTg3ZDUzM2VjNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5m
by5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1Zpc2libGVDb250ZW50UmVjdFVwZGF0ZUlu
Zm8uaApAQCAtMTIxLDYgKzEyMSw3IEBAIGlubGluZSBib29sIG9wZXJhdG9yPT0oY29uc3QgVmlz
aWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mbyYgYSwgY29uc3QgVmlzaWJsZUNvbnRlCiAgICAgcmV0
dXJuIGEuc2NhbGUoKSA9PSBiLnNjYWxlKCkKICAgICAgICAgJiYgYS5leHBvc2VkQ29udGVudFJl
Y3QoKSA9PSBiLmV4cG9zZWRDb250ZW50UmVjdCgpCiAgICAgICAgICYmIGEudW5vYnNjdXJlZENv
bnRlbnRSZWN0KCkgPT0gYi51bm9ic2N1cmVkQ29udGVudFJlY3QoKQorICAgICAgICAmJiBhLnVu
b2JzY3VyZWRDb250ZW50UmVjdFJlc3BlY3RpbmdJbnB1dFZpZXdCb3VuZHMoKSA9PSBiLnVub2Jz
Y3VyZWRDb250ZW50UmVjdFJlc3BlY3RpbmdJbnB1dFZpZXdCb3VuZHMoKQogICAgICAgICAmJiBh
LmN1c3RvbUZpeGVkUG9zaXRpb25SZWN0KCkgPT0gYi5jdXN0b21GaXhlZFBvc2l0aW9uUmVjdCgp
CiAgICAgICAgICYmIGEub2JzY3VyZWRJbnNldHMoKSA9PSBiLm9ic2N1cmVkSW5zZXRzKCkKICAg
ICAgICAgJiYgYS51bm9ic2N1cmVkU2FmZUFyZWFJbnNldHMoKSA9PSBiLnVub2JzY3VyZWRTYWZl
QXJlYUluc2V0cygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lv
cy9XZWJQYWdlSU9TLm1tCmluZGV4IDA5NDdmMDZmNDVkZTY2ZTVkZTg0MTIwNzI2M2RiN2Q2MmUy
ZTU1OTQuLjBjZjE4NGFhZDY0YzQ0YzAyZDQ4MTdiZWI0NDRmZjk5ODM4ZmVmOGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBA
IC0zMDQwLDYgKzMwNDAsOCBAQCB2b2lkIFdlYlBhZ2U6OnVwZGF0ZVZpc2libGVDb250ZW50UmVj
dHMoY29uc3QgVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mbyYgdmlzaQogICAgICAgICAgICAg
ICAgIGZyYW1lVmlldy5mcmFtZSgpLnNlbGVjdGlvbigpLnNldENhcmV0UmVjdE5lZWRzVXBkYXRl
KCk7CiAgICAgICAgICAgICAgICAgc2VuZFBhcnRpYWxFZGl0b3JTdGF0ZUFuZFNjaGVkdWxlUG9z
dExheW91dFVwZGF0ZSgpOwogICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmcmFtZVZpZXcu
ZGlkVXBkYXRlVmlld3BvcnRPdmVycmlkZVJlY3RzKCk7CiAgICAgICAgIH0gZWxzZQogICAgICAg
ICAgICAgZnJhbWVWaWV3LnNldEN1c3RvbUZpeGVkUG9zaXRpb25MYXlvdXRSZWN0KGVuY2xvc2lu
Z0ludFJlY3QodmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mby5jdXN0b21GaXhlZFBvc2l0aW9u
UmVjdCgpKSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGUyZTM3NjgwODNjNTQ2N2Q1OGYxMTlkOGMxZGUzZjRj
YTNjMjFlZGIuLjg2MjFlNGYzYzA3MjlkMjZmZDVjNTIyZGNmZDNkNjJlZDhjZWIzNjMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNSBAQAorMjAxOS0wMS0xNSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0
Lm9yZz4KKworICAgICAgICBWaXN1YWxWaWV3cG9ydCBBUEkgc2hvdWxkIGJlIHVwZGF0ZWQgdXBv
biBvcGVuaW5nIG9mIGtleWJvYXJkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTM0NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBZGRlZCBhIHJlZ3Jlc3Npb24gdGVzdC4KKworICAgICAgICAqIGZhc3Qv
dmlzdWFsLXZpZXdwb3J0L2lvcy9yZXNpemUtZXZlbnQtZm9yLWtleWJvYXJkLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZmFzdC92aXN1YWwtdmlld3BvcnQvaW9zL3Jlc2l6ZS1ldmVu
dC1mb3Ita2V5Ym9hcmQuaHRtbDogQWRkZWQuCisKIDIwMTktMDEtMTEgIERvbWluaWsgSW5mdWVo
ciAgPGRpbmZ1ZWhyQGlnYWxpYS5jb20+CiAKICAgICAgICAgRW5hYmxlIERGRyBvbiBBUk0vTGlu
dXggYWdhaW4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdmlzdWFsLXZpZXdwb3J0L2lv
cy9yZXNpemUtZXZlbnQtZm9yLWtleWJvYXJkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvdmlzdWFsLXZpZXdwb3J0L2lvcy9yZXNpemUtZXZlbnQtZm9yLWtleWJvYXJkLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi42OTFlZDgzMmQ2N2IwMDAyNDlmOTgyYmQ5MmQzYmMwMDY0Mjg5Mzdm
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC92aXN1YWwtdmlld3BvcnQvaW9z
L3Jlc2l6ZS1ldmVudC1mb3Ita2V5Ym9hcmQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTkgQEAK
K1RoaXMgdGVzdHMgInJlc2l6ZSIgZXZlbnQgb24gd2luZG93LnZpc3VhbFZpZXdwb3J0IGFuZCBo
ZWlnaHQgZ2V0dGluZyB1cGRhdGVkIHVwb24ga2V5Ym9hcmQgc2hvd2luZyB1cCBvbiBpT1MKK1Rv
IG1hbnVhbGx5IHRlc3QsIHRhcCB0aGUgdGV4dCBmaWVsZCBiZWxvdyB0byBzaG93IHRoZSBzb2Z0
d2FyZSBrZXlib2FyZCB0aGVuIGRpc21pc3MgaXQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIHJlc2l6ZUNvdW50IGlzIDAKK1BBU1MgcmVzaXplQ291bnQgaXMgMQorUEFT
UyBvcmlnaW5hbFdpZHRoIGlzIHdpbmRvdy52aXN1YWxWaWV3cG9ydC53aWR0aAorUEFTUyB3aW5k
b3cudmlzdWFsVmlld3BvcnQuaGVpZ2h0IGlzIG5vdCBvcmlnaW5hbEhlaWdodAorUEFTUyB3aW5k
b3cudmlzdWFsVmlld3BvcnQuaGVpZ2h0IDwgb3JpZ2luYWxIZWlnaHQgaXMgdHJ1ZQorUEFTUyBy
ZXNpemVDb3VudCBpcyAyCitQQVNTIG9yaWdpbmFsV2lkdGggaXMgd2luZG93LnZpc3VhbFZpZXdw
b3J0LndpZHRoCitQQVNTIHdpbmRvdy52aXN1YWxWaWV3cG9ydC5oZWlnaHQgaXMgb3JpZ2luYWxI
ZWlnaHQKK1BBU1Mgd2luZG93LnZpc3VhbFZpZXdwb3J0LmhlaWdodCA8IG9yaWdpbmFsSGVpZ2h0
IGlzIGZhbHNlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC92aXN1YWwtdmlld3BvcnQvaW9zL3Jl
c2l6ZS1ldmVudC1mb3Ita2V5Ym9hcmQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdmlzdWFsLXZp
ZXdwb3J0L2lvcy9yZXNpemUtZXZlbnQtZm9yLWtleWJvYXJkLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGYy
NjczMDQyNjNmNDllMmU0ZTcwYjU1ZDllNDlhYmQ3MWQ3ZTU5MAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvdmlzdWFsLXZpZXdwb3J0L2lvcy9yZXNpemUtZXZlbnQtZm9yLWtl
eWJvYXJkLmh0bWwKQEAgLTAsMCArMSw2NyBAQAorPCFET0NUWVBFIGh0bWw+PCEtLSB3ZWJraXQt
dGVzdC1ydW5uZXIgWyB1c2VGbGV4aWJsZVZpZXdwb3J0PXRydWUgXSAtLT4KKzxodG1sPgorPGhl
YWQ+Cis8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0iaW5pdGlhbC1zY2FsZT0xLCB1c2Vy
LXNjYWxhYmxlPW5vIj4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKzxpbnB1
dCB0eXBlPSJ0ZXh0IiBvbmNsaWNrPSJkaWRGb2N1cygpIiBwbGFjZWhvbGRlcj0iVGFwIGhlcmUg
dG8gb3BlbiBrZXlib2FyZCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhl
bHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdUaGlzIHRlc3RzICJyZXNp
emUiIGV2ZW50IG9uIHdpbmRvdy52aXN1YWxWaWV3cG9ydCBhbmQgaGVpZ2h0IGdldHRpbmcgdXBk
YXRlZCB1cG9uIGtleWJvYXJkIHNob3dpbmcgdXAgb24gaU9TPGJyPicKKyAgICArICdUbyBtYW51
YWxseSB0ZXN0LCB0YXAgdGhlIHRleHQgZmllbGQgYmVsb3cgdG8gc2hvdyB0aGUgc29mdHdhcmUg
a2V5Ym9hcmQgdGhlbiBkaXNtaXNzIGl0LicpOworCitqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwor
ZnVuY3Rpb24gZGlkRm9jdXMoKSB7IH0KKworYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIGF3YWl0IFVJSGVscGVyLmVuc3VyZVBy
ZXNlbnRhdGlvblVwZGF0ZSgpOworCisgICAgd2luZG93Lm9yaWdpbmFsV2lkdGggPSB3aW5kb3cu
dmlzdWFsVmlld3BvcnQud2lkdGg7CisgICAgd2luZG93Lm9yaWdpbmFsSGVpZ2h0ID0gd2luZG93
LnZpc3VhbFZpZXdwb3J0LmhlaWdodDsKKyAgICB3aW5kb3cucmVzaXplQ291bnQgPSAwOworICAg
IHdpbmRvdy52aXN1YWxWaWV3cG9ydC5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCAoKSA9PiB7
CisgICAgICAgIHJlc2l6ZUNvdW50Kys7CisgICAgfSk7CisKKyAgICBzaG91bGRCZSgncmVzaXpl
Q291bnQnLCAnMCcpOworCisgICAgY29uc3QgcmVjdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Io
J2lucHV0JykuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7CisKKyAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKKyAgICAgICAgYXdhaXQgVUlIZWxwZXIuYWN0aXZhdGVBbmRXYWl0Rm9ySW5wdXRT
ZXNzaW9uQXQocmVjdC5sZWZ0ICsgNSwgcmVjdC50b3AgKyA1KTsKKyAgICAgICAgYXdhaXQgVUlI
ZWxwZXIuZW5zdXJlUHJlc2VudGF0aW9uVXBkYXRlKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAg
YXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsKKyAgICAgICAgICAgIHdpbmRvdy5kaWRG
b2N1cyA9ICgpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgNTAwKTsKKyAgICAgICAgfSk7CisgICAg
fQorCisgICAgc2hvdWxkQmUoJ3Jlc2l6ZUNvdW50JywgJzEnKTsKKyAgICBzaG91bGRCZSgnb3Jp
Z2luYWxXaWR0aCcsICd3aW5kb3cudmlzdWFsVmlld3BvcnQud2lkdGgnKTsKKyAgICBzaG91bGRO
b3RCZSgnd2luZG93LnZpc3VhbFZpZXdwb3J0LmhlaWdodCcsICdvcmlnaW5hbEhlaWdodCcpOwor
ICAgIHNob3VsZEJlVHJ1ZSgnd2luZG93LnZpc3VhbFZpZXdwb3J0LmhlaWdodCA8IG9yaWdpbmFs
SGVpZ2h0Jyk7CisKKyAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dCcpLmJsdXIoKTsK
KyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgYXdhaXQgVUlIZWxwZXIud2Fp
dEZvcktleWJvYXJkVG9IaWRlKCk7CisgICAgICAgIGF3YWl0IFVJSGVscGVyLmVuc3VyZVByZXNl
bnRhdGlvblVwZGF0ZSgpOworICAgIH0gZWxzZSB7CisgICAgICAgIGF3YWl0IG5ldyBQcm9taXNl
KChyZXNvbHZlKSA9PiB7CisgICAgICAgICAgICBzZXRUaW1lb3V0KHJlc29sdmUsIDUwMCk7Cisg
ICAgICAgIH0pOworICAgIH0KKworICAgIHNob3VsZEJlKCdyZXNpemVDb3VudCcsICcyJyk7Cisg
ICAgc2hvdWxkQmUoJ29yaWdpbmFsV2lkdGgnLCAnd2luZG93LnZpc3VhbFZpZXdwb3J0LndpZHRo
Jyk7CisgICAgc2hvdWxkQmUoJ3dpbmRvdy52aXN1YWxWaWV3cG9ydC5oZWlnaHQnLCAnb3JpZ2lu
YWxIZWlnaHQnKTsKKyAgICBzaG91bGRCZUZhbHNlKCd3aW5kb3cudmlzdWFsVmlld3BvcnQuaGVp
Z2h0IDwgb3JpZ2luYWxIZWlnaHQnKTsKKworICAgIGZpbmlzaEpTVGVzdCgpOworfQorCis8L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="376039"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>