<?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>151538</bug_id>
          
          <creation_ts>2015-11-21 21:28:11 -0800</creation_ts>
          <short_desc>[iOS] Option-up and Option-down should scroll a little less than a full page</short_desc>
          <delta_ts>2015-11-30 11:53:23 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>enrica</cc>
    
    <cc>rmondello</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1143994</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-11-21 21:28:11 -0800</bug_when>
    <thetext>[iOS] Option-up and Option-down should scroll a little less than a full page</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143995</commentid>
    <comment_count>1</comment_count>
      <attachid>266041</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-11-21 21:28:30 -0800</bug_when>
    <thetext>Created attachment 266041
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143996</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-11-21 21:29:14 -0800</bug_when>
    <thetext>Looking into writing a test, will have to plumb the ability to use arbitrary modifiers when sending key events.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143997</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-11-21 21:30:37 -0800</bug_when>
    <thetext>Attachment 266041 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:2882:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 2 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>1144040</commentid>
    <comment_count>4</comment_count>
      <attachid>266041</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-11-22 08:24:21 -0800</bug_when>
    <thetext>Comment on attachment 266041
Patch

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

&gt; Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:2868
&gt; +- (Optional&lt;FloatPoint&gt;)_scrollOffsetForEvent:(WebIOSEvent *)event

FloatSize?

&gt; Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:2885
&gt; +        CGFloat scrollDistance = ^ CGFloat {

Not sure what&apos;s happening here.

&gt; Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:2907
&gt; +        return computeOffset(Line, Left);

I would prefer blank lines after all the returns.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1144794</commentid>
    <comment_count>5</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-11-30 10:00:41 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Comment on attachment 266041 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=266041&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:2868
&gt; &gt; +- (Optional&lt;FloatPoint&gt;)_scrollOffsetForEvent:(WebIOSEvent *)event
&gt; 
&gt; FloatSize?

_scrollByContentOffset takes a FloatPoint :D

&gt; &gt; Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:2885
&gt; &gt; +        CGFloat scrollDistance = ^ CGFloat {
&gt; 
&gt; Not sure what&apos;s happening here.

Blocks, man!

No, but really, that&apos;s the syntax for when you want to explicitly state the return type of a block. Which I need to do because of the 0 (and the ints). Or I could cast all of those but I hate that more.

&gt; &gt; Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:2907
&gt; &gt; +        return computeOffset(Line, Left);
&gt; 
&gt; I would prefer blank lines after all the returns.

Sure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1144857</commentid>
    <comment_count>6</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-11-30 11:53:23 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/192811</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>266041</attachid>
            <date>2015-11-21 21:28:30 -0800</date>
            <delta_ts>2015-11-22 08:24:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-151538-20151121212816.patch</filename>
            <type>text/plain</type>
            <size>7381</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkyNzI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggM2I5OWY0ODgxOTFjYTIz
MDYxZWQyMGQ3OGU4NzEzMzFkNDUxZTQ2MC4uNDU2NjBjYTA0ODdjY2JlZTcyMjk2NTQ0ZTRhYzU5
MzY1NmRlMzYwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSArMSwxNiBAQAorMjAxNS0xMS0yMSAgVGltIEhv
cnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBPcHRpb24t
dXAgYW5kIE9wdGlvbi1kb3duIHNob3VsZCBzY3JvbGwgYSBsaXR0bGUgbGVzcyB0aGFuIGEgZnVs
bCBwYWdlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NTE1MzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIzNjQyNjc1PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgX3Njcm9sbE9m
ZnNldEZvckV2ZW50Ol0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9pbnRlcnByZXRLZXlF
dmVudDppc0NoYXJFdmVudDpdKToKKyAgICAgICAgQ2xlYW4gdXAgdGhlIGNvZGUgYSBsaXR0bGUs
IGFuZCBhZGp1c3Qgc28gdGhhdCB3ZSAqYWx3YXlzKiB1c2UgcGFnZVN0ZXAKKyAgICAgICAgaW5z
dGVhZCBvZiBqdXN0IHNjcm9sbGluZyBieSB0aGUgdW5vYnNjdXJlZCByZWN0IHdoZW4gc2Nyb2xs
aW5nIGJ5IGEgcGFnZS4KKyAgICAgICAgUHJldmlvdXNseSwgd2UgZGlkIGZvciB0aGUgc3BhY2Vi
YXIsIGJ1dCBub3QgZm9yIG9wdGlvbi11cCBhbmQgb3B0aW9uLWRvd24uCisKID09IFJvbGxlZCBv
dmVyIHRvIENoYW5nZUxvZy0yMDE1LTExLTIxID09CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDlhZDA5
MTcxMmY4OWFiZGZmMmIyMjg2NzFlZjE0NjkwODQ5NTQ0MTkuLmUzZWMxNzk0MWRhMjdjY2U4MDcx
ZDBjNDJjNWQ1ZjA4YzdiZDJmOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC0yODY1LDYgKzI4NjUs
NzAgQEAgc3RhdGljIFVJVGV4dEF1dG9jYXBpdGFsaXphdGlvblR5cGUgdG9VSVRleHRBdXRvY2Fw
aXRhbGl6ZShXZWJBdXRvY2FwaXRhbGl6ZVR5cGUKICAgICBfdWlFdmVudEJlaW5nUmVzZW50ID0g
bmlsOwogfQogCistIChPcHRpb25hbDxGbG9hdFBvaW50Pilfc2Nyb2xsT2Zmc2V0Rm9yRXZlbnQ6
KFdlYklPU0V2ZW50ICopZXZlbnQKK3sKKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQga1dlYlNw
YWNlS2V5ID0gMHgyMDsKKworICAgIGlmIChfcGFnZS0+ZWRpdG9yU3RhdGUoKS5pc0NvbnRlbnRF
ZGl0YWJsZSkKKyAgICAgICAgcmV0dXJuIE51bGxvcHQ7CisKKyAgICBOU1N0cmluZyAqY2hhcmFj
dGVyc0lnbm9yaW5nTW9kaWZpZXJzID0gZXZlbnQuY2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJz
OworICAgIGlmICghY2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzLmxlbmd0aCkKKyAgICAgICAg
cmV0dXJuIE51bGxvcHQ7CisKKyAgICBlbnVtIFNjcm9sbGluZ0luY3JlbWVudCB7IERvY3VtZW50
LCBQYWdlLCBMaW5lIH07CisgICAgZW51bSBTY3JvbGxpbmdEaXJlY3Rpb24geyBVcCwgRG93biwg
TGVmdCwgUmlnaHQgfTsKKworICAgIGF1dG8gY29tcHV0ZU9mZnNldCA9IF4oU2Nyb2xsaW5nSW5j
cmVtZW50IGluY3JlbWVudCwgU2Nyb2xsaW5nRGlyZWN0aW9uIGRpcmVjdGlvbikgeworICAgICAg
ICBib29sIGlzSG9yaXpvbnRhbCA9IChkaXJlY3Rpb24gPT0gTGVmdCB8fCBkaXJlY3Rpb24gPT0g
UmlnaHQpOworCisgICAgICAgIENHRmxvYXQgc2Nyb2xsRGlzdGFuY2UgPSBeIENHRmxvYXQgewor
ICAgICAgICAgICAgc3dpdGNoIChpbmNyZW1lbnQpIHsKKyAgICAgICAgICAgIGNhc2UgRG9jdW1l
bnQ6CisgICAgICAgICAgICAgICAgQVNTRVJUKCFpc0hvcml6b250YWwpOworICAgICAgICAgICAg
ICAgIHJldHVybiBzZWxmLmJvdW5kcy5zaXplLmhlaWdodDsKKyAgICAgICAgICAgIGNhc2UgUGFn
ZToKKyAgICAgICAgICAgICAgICBBU1NFUlQoIWlzSG9yaXpvbnRhbCk7CisgICAgICAgICAgICAg
ICAgcmV0dXJuIFNjcm9sbGJhcjo6cGFnZVN0ZXAoX3BhZ2UtPnVub2JzY3VyZWRDb250ZW50UmVj
dCgpLmhlaWdodCgpLCBzZWxmLmJvdW5kcy5zaXplLmhlaWdodCk7CisgICAgICAgICAgICBjYXNl
IExpbmU6CisgICAgICAgICAgICAgICAgcmV0dXJuIFNjcm9sbGJhcjo6cGl4ZWxzUGVyTGluZVN0
ZXAoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwor
ICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0oKTsKKworICAgICAgICBpZiAoZGlyZWN0
aW9uID09IFVwIHx8IGRpcmVjdGlvbiA9PSBMZWZ0KQorICAgICAgICAgICAgc2Nyb2xsRGlzdGFu
Y2UgPSAtc2Nyb2xsRGlzdGFuY2U7CisgICAgICAgIAorICAgICAgICByZXR1cm4gKGlzSG9yaXpv
bnRhbCA/IEZsb2F0UG9pbnQoc2Nyb2xsRGlzdGFuY2UsIDApIDogRmxvYXRQb2ludCgwLCBzY3Jv
bGxEaXN0YW5jZSkpOworICAgIH07CisKKyAgICBpZiAoW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlm
aWVycyBpc0VxdWFsVG9TdHJpbmc6VUlLZXlJbnB1dExlZnRBcnJvd10pCisgICAgICAgIHJldHVy
biBjb21wdXRlT2Zmc2V0KExpbmUsIExlZnQpOworICAgIGlmIChbY2hhcmFjdGVyc0lnbm9yaW5n
TW9kaWZpZXJzIGlzRXF1YWxUb1N0cmluZzpVSUtleUlucHV0UmlnaHRBcnJvd10pCisgICAgICAg
IHJldHVybiBjb21wdXRlT2Zmc2V0KExpbmUsIFJpZ2h0KTsKKworICAgIFNjcm9sbGluZ0luY3Jl
bWVudCBpbmNyZW1lbnRGb3JWZXJ0aWNhbEFycm93S2V5ID0gTGluZTsKKyAgICBpZiAoZXZlbnQu
bW9kaWZpZXJGbGFncyAmIFdlYkV2ZW50RmxhZ01hc2tBbHRlcm5hdGUpCisgICAgICAgIGluY3Jl
bWVudEZvclZlcnRpY2FsQXJyb3dLZXkgPSBQYWdlOworICAgIGVsc2UgaWYgKGV2ZW50Lm1vZGlm
aWVyRmxhZ3MgJiBXZWJFdmVudEZsYWdNYXNrQ29tbWFuZCkKKyAgICAgICAgaW5jcmVtZW50Rm9y
VmVydGljYWxBcnJvd0tleSA9IERvY3VtZW50OworICAgIGlmIChbY2hhcmFjdGVyc0lnbm9yaW5n
TW9kaWZpZXJzIGlzRXF1YWxUb1N0cmluZzpVSUtleUlucHV0VXBBcnJvd10pCisgICAgICAgIHJl
dHVybiBjb21wdXRlT2Zmc2V0KGluY3JlbWVudEZvclZlcnRpY2FsQXJyb3dLZXksIFVwKTsKKyAg
ICBpZiAoW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycyBpc0VxdWFsVG9TdHJpbmc6VUlLZXlJ
bnB1dERvd25BcnJvd10pCisgICAgICAgIHJldHVybiBjb21wdXRlT2Zmc2V0KGluY3JlbWVudEZv
clZlcnRpY2FsQXJyb3dLZXksIERvd24pOworCisgICAgaWYgKFtjaGFyYWN0ZXJzSWdub3JpbmdN
b2RpZmllcnMgaXNFcXVhbFRvU3RyaW5nOlVJS2V5SW5wdXRQYWdlRG93bl0pCisgICAgICAgIHJl
dHVybiBjb21wdXRlT2Zmc2V0KFBhZ2UsIERvd24pOworICAgIGlmIChbY2hhcmFjdGVyc0lnbm9y
aW5nTW9kaWZpZXJzIGlzRXF1YWxUb1N0cmluZzpVSUtleUlucHV0UGFnZVVwXSkKKyAgICAgICAg
cmV0dXJuIGNvbXB1dGVPZmZzZXQoUGFnZSwgVXApOworCisgICAgaWYgKFtjaGFyYWN0ZXJzSWdu
b3JpbmdNb2RpZmllcnMgY2hhcmFjdGVyQXRJbmRleDowXSA9PSBrV2ViU3BhY2VLZXkpCisgICAg
ICAgIHJldHVybiBjb21wdXRlT2Zmc2V0KFBhZ2UsIChldmVudC5tb2RpZmllckZsYWdzICYgV2Vi
RXZlbnRGbGFnTWFza1NoaWZ0KSA/IFVwIDogRG93bik7CisKKyAgICByZXR1cm4gTnVsbG9wdDsK
K30KKwogLSAoQk9PTClfaW50ZXJwcmV0S2V5RXZlbnQ6KFdlYklPU0V2ZW50ICopZXZlbnQgaXND
aGFyRXZlbnQ6KEJPT0wpaXNDaGFyRXZlbnQKIHsKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQg
a1dlYkVudGVyS2V5ID0gMHgwMDAzOwpAQCAtMjg3NSw1MiArMjkzOSwxOSBAQCBzdGF0aWMgVUlU
ZXh0QXV0b2NhcGl0YWxpemF0aW9uVHlwZSB0b1VJVGV4dEF1dG9jYXBpdGFsaXplKFdlYkF1dG9j
YXBpdGFsaXplVHlwZQogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBrV2ViU3BhY2VLZXkgPSAw
eDIwOwogCiAgICAgQk9PTCBjb250ZW50RWRpdGFibGUgPSBfcGFnZS0+ZWRpdG9yU3RhdGUoKS5p
c0NvbnRlbnRFZGl0YWJsZTsKLSAgICBXZWJDb3JlOjpGbG9hdFJlY3QgdW5vYnNjdXJlZENvbnRl
bnRSZWN0ID0gX3BhZ2UtPnVub2JzY3VyZWRDb250ZW50UmVjdCgpOwogCiAgICAgaWYgKCFjb250
ZW50RWRpdGFibGUgJiYgZXZlbnQuaXNUYWJLZXkpCiAgICAgICAgIHJldHVybiBOTzsKIAotICAg
IEJPT0wgc2hpZnQgPSBldmVudC5tb2RpZmllckZsYWdzICYgV2ViRXZlbnRGbGFnTWFza1NoaWZ0
OwotICAgIEJPT0wgY29tbWFuZCA9IGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBXZWJFdmVudEZsYWdN
YXNrQ29tbWFuZDsKLSAgICBCT09MIG9wdGlvbiA9IGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBXZWJF
dmVudEZsYWdNYXNrQWx0ZXJuYXRlOwotICAgIE5TU3RyaW5nICpjaGFyYWN0ZXJzSWdub3JpbmdN
b2RpZmllcnMgPSBbZXZlbnQgY2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzXTsKLSAgICBCT09M
IHNob3VsZFNjcm9sbCA9IFlFUzsKLSAgICBGbG9hdFBvaW50IHNjcm9sbE9mZnNldDsKLQotICAg
IGlmIChbY2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzIGlzRXF1YWxUb1N0cmluZzpVSUtleUlu
cHV0TGVmdEFycm93XSkKLSAgICAgICAgc2Nyb2xsT2Zmc2V0LnNldFgoLVNjcm9sbGJhcjo6cGl4
ZWxzUGVyTGluZVN0ZXAoKSk7Ci0gICAgZWxzZSBpZiAoW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlm
aWVycyBpc0VxdWFsVG9TdHJpbmc6VUlLZXlJbnB1dFVwQXJyb3ddKSB7Ci0gICAgICAgIGlmIChv
cHRpb24pCi0gICAgICAgICAgICBzY3JvbGxPZmZzZXQuc2V0WSgtdW5vYnNjdXJlZENvbnRlbnRS
ZWN0LmhlaWdodCgpKTsKLSAgICAgICAgZWxzZSBpZiAoY29tbWFuZCkKLSAgICAgICAgICAgIHNj
cm9sbE9mZnNldC5zZXRZKC1zZWxmLmJvdW5kcy5zaXplLmhlaWdodCk7Ci0gICAgICAgIGVsc2UK
LSAgICAgICAgICAgIHNjcm9sbE9mZnNldC5zZXRZKC1TY3JvbGxiYXI6OnBpeGVsc1BlckxpbmVT
dGVwKCkpOwotICAgIH0gZWxzZSBpZiAoW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycyBpc0Vx
dWFsVG9TdHJpbmc6VUlLZXlJbnB1dFJpZ2h0QXJyb3ddKQotICAgICAgICAgICAgc2Nyb2xsT2Zm
c2V0LnNldFgoU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKTsKLSAgICBlbHNlIGlmIChb
Y2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzIGlzRXF1YWxUb1N0cmluZzpVSUtleUlucHV0RG93
bkFycm93XSkgewotICAgICAgICBpZiAob3B0aW9uKQotICAgICAgICAgICAgc2Nyb2xsT2Zmc2V0
LnNldFkodW5vYnNjdXJlZENvbnRlbnRSZWN0LmhlaWdodCgpKTsKLSAgICAgICAgZWxzZSBpZiAo
Y29tbWFuZCkKLSAgICAgICAgICAgIHNjcm9sbE9mZnNldC5zZXRZKHNlbGYuYm91bmRzLnNpemUu
aGVpZ2h0KTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgc2Nyb2xsT2Zmc2V0LnNldFkoU2Ny
b2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKTsKLSAgICB9IGVsc2UgaWYgKFtjaGFyYWN0ZXJz
SWdub3JpbmdNb2RpZmllcnMgaXNFcXVhbFRvU3RyaW5nOlVJS2V5SW5wdXRQYWdlRG93bl0pCi0g
ICAgICAgIHNjcm9sbE9mZnNldC5zZXRZKHVub2JzY3VyZWRDb250ZW50UmVjdC5oZWlnaHQoKSk7
Ci0gICAgZWxzZSBpZiAoW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVycyBpc0VxdWFsVG9TdHJp
bmc6VUlLZXlJbnB1dFBhZ2VVcF0pCi0gICAgICAgIHNjcm9sbE9mZnNldC5zZXRZKC11bm9ic2N1
cmVkQ29udGVudFJlY3QuaGVpZ2h0KCkpOwotICAgIGVsc2UKLSAgICAgICAgc2hvdWxkU2Nyb2xs
ID0gTk87Ci0KLSAgICBpZiAoc2hvdWxkU2Nyb2xsKSB7Ci0gICAgICAgIFtfd2ViVmlldyBfc2Ny
b2xsQnlDb250ZW50T2Zmc2V0OnNjcm9sbE9mZnNldF07CisgICAgaWYgKE9wdGlvbmFsPEZsb2F0
UG9pbnQ+IHNjcm9sbE9mZnNldCA9IFtzZWxmIF9zY3JvbGxPZmZzZXRGb3JFdmVudDpldmVudF0p
IHsKKyAgICAgICAgW193ZWJWaWV3IF9zY3JvbGxCeUNvbnRlbnRPZmZzZXQ6KnNjcm9sbE9mZnNl
dF07CiAgICAgICAgIHJldHVybiBZRVM7CiAgICAgfQogCiAgICAgVUlLZXlib2FyZEltcGwgKmtl
eWJvYXJkID0gW1VJS2V5Ym9hcmRJbXBsIHNoYXJlZEluc3RhbmNlXTsKLSAgICBOU1N0cmluZyAq
Y2hhcmFjdGVycyA9IFtldmVudCBjaGFyYWN0ZXJzXTsKKyAgICBOU1N0cmluZyAqY2hhcmFjdGVy
cyA9IGV2ZW50LmNoYXJhY3RlcnM7CiAgICAgCi0gICAgaWYgKCFbY2hhcmFjdGVycyBsZW5ndGhd
KQorICAgIGlmICghY2hhcmFjdGVycy5sZW5ndGgpCiAgICAgICAgIHJldHVybiBOTzsKIAogICAg
IHN3aXRjaCAoW2NoYXJhY3RlcnMgY2hhcmFjdGVyQXRJbmRleDowXSkgewpAQCAtMjkzNywxMiAr
Mjk2OCw3IEBAIHN0YXRpYyBVSVRleHRBdXRvY2FwaXRhbGl6YXRpb25UeXBlIHRvVUlUZXh0QXV0
b2NhcGl0YWxpemUoV2ViQXV0b2NhcGl0YWxpemVUeXBlCiAgICAgICAgIGJyZWFrOwogCiAgICAg
Y2FzZSBrV2ViU3BhY2VLZXk6Ci0gICAgICAgIGlmICghY29udGVudEVkaXRhYmxlKSB7Ci0gICAg
ICAgICAgICBpbnQgcGFnZVN0ZXAgPSBTY3JvbGxiYXI6OnBhZ2VTdGVwKHVub2JzY3VyZWRDb250
ZW50UmVjdC5oZWlnaHQoKSwgc2VsZi5ib3VuZHMuc2l6ZS5oZWlnaHQpOwotICAgICAgICAgICAg
W193ZWJWaWV3IF9zY3JvbGxCeUNvbnRlbnRPZmZzZXQ6RmxvYXRQb2ludCgwLCBzaGlmdCA/IC1w
YWdlU3RlcCA6IHBhZ2VTdGVwKV07Ci0gICAgICAgICAgICByZXR1cm4gWUVTOwotICAgICAgICB9
Ci0gICAgICAgIGlmIChpc0NoYXJFdmVudCkgeworICAgICAgICBpZiAoY29udGVudEVkaXRhYmxl
ICYmIGlzQ2hhckV2ZW50KSB7CiAgICAgICAgICAgICBba2V5Ym9hcmQgYWRkSW5wdXRTdHJpbmc6
ZXZlbnQuY2hhcmFjdGVycyB3aXRoRmxhZ3M6ZXZlbnQua2V5Ym9hcmRGbGFnc107CiAgICAgICAg
ICAgICByZXR1cm4gWUVTOwogICAgICAgICB9Cg==
</data>
<flag name="review"
          id="291073"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>