<?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>134808</bug_id>
          
          <creation_ts>2014-07-10 12:07:07 -0700</creation_ts>
          <short_desc>Phone numbers that span two lines are not detected</short_desc>
          <delta_ts>2014-07-11 16:56:42 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>sam</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1021675</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-07-10 12:07:07 -0700</bug_when>
    <thetext>Phone numbers that span two lines are not detected.

&lt;rdar://problem/17601146&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1021676</commentid>
    <comment_count>1</comment_count>
      <attachid>234716</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-07-10 12:13:03 -0700</bug_when>
    <thetext>Created attachment 234716
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1021748</commentid>
    <comment_count>2</comment_count>
      <attachid>234716</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-07-10 17:35:29 -0700</bug_when>
    <thetext>Comment on attachment 234716
Patch v1 

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

&gt; Source/WebCore/editing/Editor.cpp:3397
&gt; +        // If this text iterator range&apos;s end position is before the end of the full range,
&gt; +        // then scan a window that is a bit before and a bit after this text iterator range.

Why do we not search backwards a bit if we end at the end of the range?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1021752</commentid>
    <comment_count>3</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-07-10 17:53:09 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 234716 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=234716&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/editing/Editor.cpp:3397
&gt; &gt; +        // If this text iterator range&apos;s end position is before the end of the full range,
&gt; &gt; +        // then scan a window that is a bit before and a bit after this text iterator range.
&gt; 
&gt; Why do we not search backwards a bit if we end at the end of the range?

Currently when we extend a range to search it, we extend it 15 characters in both directions.

So if we did what you suggest, we would be expanding the end of the end range to 15 previous.

Quite often in practice, the final chunk of text from the iterator will already have been 15 characters long, so doing this extension would be re-scanning those 15 characters.

But if the final chunk was shorter than 15 characters - say it was 1 character - then we already would&apos;ve scanned that range by extending the end of the previous chunk 15 characters *forward*

Combine this with the fact that the original input range is extended 15 in each direction from the actual selection, and I don&apos;t see how stopping at the end would miss anything we want to scan.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1021937</commentid>
    <comment_count>4</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-07-11 16:56:42 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/171016</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>234716</attachid>
            <date>2014-07-10 12:13:03 -0700</date>
            <delta_ts>2014-07-11 16:26:54 -0700</delta_ts>
            <desc>Patch v1 </desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>4845</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3NDFmMDYxLi41NWJmMzFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTgg
QEAKIDIwMTQtMDctMTAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCisgICAg
ICAgIFBob25lIG51bWJlcnMgdGhhdCBzcGFuIHR3byBsaW5lcyBhcmUgbm90IGRldGVjdGVkLgor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTc2MDExNDY+IGFuZCBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0ODA4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFZGl0b3I6OnNjYW5TZWxlY3Rpb25Gb3JUZWxlcGhvbmVOdW1iZXJzKTogQWZ0ZXIgc2Nh
bm5pbmcgYSByYW5nZSBmcm9tIHRoZSBUZXh0SXRlcmF0b3IsCisgICAgICAgICAgICBjcmVhdGUg
YW4gImVkZ2UgcmFuZ2UiIHdpbmRvdyBhcm91bmQgdGhlIGVuZCBvZiB0aGUgVGV4dEl0ZXJhdG9y
IHJhbmdlLCBhbmQgc2NhbiBpdC4KKyAgICAgICAgICAgIEFsc28gbWFrZSBzdXJlIHRvIG5vdCBh
Y2N1bXVsYXRlIGR1cGxpY2F0ZSByYW5nZXMgdGhhdCBtaWdodCBoYXZlIHNob3dlZCB1cCBpbiBi
b3RoIHRoZQorICAgICAgICAgICAgVGV4dEl0ZXJhdG9yIHJhbmdlIGFuZCB0aGUgZWRnZSB3aW5k
b3cgcmFuZ2UuCisKKzIwMTQtMDctMTAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29t
PgorCiAgICAgICAgIFBob25lIG51bWJlciBoaWdobGlnaHRzIHNob3VsZCBhbHdheXMgYmUgdmlz
aWJsZSBpZiB0aGUgbW91c2UgaG92ZXJzIG92ZXIuCiAgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8x
NzUyNzQ3Nj4gYW5kIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ3
ODQKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwIGIvU291
cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IDRmMzM4YjMuLmMzNzNhZjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTMzNjksNiArMzM2OSw3IEBAIHZvaWQgRWRp
dG9yOjpzY2FuU2VsZWN0aW9uRm9yVGVsZXBob25lTnVtYmVycygpCiAgICAgICAgIGNsaWVudCgp
LT5zZWxlY3RlZFRlbGVwaG9uZU51bWJlclJhbmdlc0NoYW5nZWQobWFya2VkUmFuZ2VzKTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KKyAgICBSZWZQdHI8UmFuZ2U+IHNlbGVjdGVkUmFuZ2UgPSBm
cmFtZVNlbGVjdGlvbi50b05vcm1hbGl6ZWRSYW5nZSgpOwogCiAgICAgLy8gRXh0ZW5kIHRoZSBy
YW5nZSBhIGZldyBjaGFyYWN0ZXJzIGluIGVhY2ggZGlyZWN0aW9uIHRvIGRldGVjdCBpbmNvbXBs
ZXRlbHkgc2VsZWN0ZWQgcGhvbmUgbnVtYmVycy4KICAgICBzdGF0aWMgY29uc3QgaW50IGNoYXJh
Y3RlcnNUb0V4dGVuZCA9IDE1OwpAQCAtMzM4NCwxOSArMzM4NSw1NCBAQCB2b2lkIEVkaXRvcjo6
c2NhblNlbGVjdGlvbkZvclRlbGVwaG9uZU51bWJlcnMoKQogICAgIGV4dGVuZGVkU2VsZWN0aW9u
LnNldEV4dGVudChleHRlbnQpOwogICAgIFJlZlB0cjxSYW5nZT4gZXh0ZW5kZWRSYW5nZSA9IGV4
dGVuZGVkU2VsZWN0aW9uLnRvTm9ybWFsaXplZFJhbmdlKCk7CiAKLSAgICAvLyBGSVhNRTogVGhp
cyB3b24ndCB3b3JrIGlmIGEgcGhvbmUgbnVtYmVyIHNwYW5zIG11bHRpcGxlIGNodW5rcyBvZiB0
ZXh0IGZyb20gdGhlIHBlcnNwZWN0aXZlIG9mIHRoZSBUZXh0SXRlcmF0b3IKLSAgICAvLyAoQnkg
YSBzdHlsZSBjaGFuZ2UsIGltYWdlLCBsaW5lIGJyZWFrLCBldGMuKQotICAgIC8vIE9uZSBpZGVh
IHRvIGhhbmRsZSB0aGlzIHdvdWxkIGJlIGEgbW9kZWwgbGlrZSB0ZXh0IHNlYXJjaCB0aGF0IHVz
ZXMgYSByb3RhdGluZyB3aW5kb3cuCiAgICAgZm9yIChUZXh0SXRlcmF0b3IgdGV4dENodW5rKGV4
dGVuZGVkUmFuZ2UuZ2V0KCkpOyAhdGV4dENodW5rLmF0RW5kKCk7IHRleHRDaHVuay5hZHZhbmNl
KCkpIHsKLSAgICAgICAgLy8gVGV4dEl0ZXJhdG9yIGlzIHN1cHBvc2VkIHRvIG5ldmVyIHJldHVy
bnMgYSBSYW5nZSB0aGF0IHNwYW5zIG11bHRpcGxlIE5vZGVzLgotICAgICAgICBBU1NFUlQodGV4
dENodW5rLnJhbmdlKCktPnN0YXJ0Q29udGFpbmVyKCkgPT0gdGV4dENodW5rLnJhbmdlKCktPmVu
ZENvbnRhaW5lcigpKTsKKyAgICAgICAgVmVjdG9yPFJlZlB0cjxSYW5nZT4+IG1hcmtlZENodW5r
UmFuZ2VzOworICAgICAgICBWZWN0b3I8UmVmUHRyPFJhbmdlPj4gbWFya2VkRWRnZVJhbmdlczsK
KworICAgICAgICAvLyBTY2FuIHRoZSB0ZXh0IGl0ZXJhdG9yIHJhbmdlLgorICAgICAgICBSZWZQ
dHI8UmFuZ2U+IHJhbmdlID0gdGV4dENodW5rLnJhbmdlKCk7CisgICAgICAgIHNjYW5SYW5nZUZv
clRlbGVwaG9uZU51bWJlcnMoKnJhbmdlLCB0ZXh0Q2h1bmsudGV4dCgpLCBtYXJrZWRDaHVua1Jh
bmdlcyk7CisKKyAgICAgICAgLy8gSWYgdGhpcyB0ZXh0IGl0ZXJhdG9yIHJhbmdlJ3MgZW5kIHBv
c2l0aW9uIGlzIGJlZm9yZSB0aGUgZW5kIG9mIHRoZSBmdWxsIHJhbmdlLAorICAgICAgICAvLyB0
aGVuIHNjYW4gYSB3aW5kb3cgdGhhdCBpcyBhIGJpdCBiZWZvcmUgYW5kIGEgYml0IGFmdGVyIHRo
aXMgdGV4dCBpdGVyYXRvciByYW5nZS4KKyAgICAgICAgUmVmUHRyPFJhbmdlPiBlZGdlUmFuZ2U7
CisgICAgICAgIGlmIChyYW5nZS0+ZW5kUG9zaXRpb24oKSA8IGV4dGVuZGVkUmFuZ2UtPmVuZFBv
c2l0aW9uKCkpIHsKKyAgICAgICAgICAgIFBvc2l0aW9uIGVuZFBvc2l0aW9uID0gcmFuZ2UtPmVu
ZFBvc2l0aW9uKCk7CisgICAgICAgICAgICBQb3NpdGlvbiBzdGFydFBvc2l0aW9uID0gZW5kUG9z
aXRpb247CisgICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IGNoYXJhY3RlcnNUb0V4dGVu
ZDsgKytpKSB7CisgICAgICAgICAgICAgICAgc3RhcnRQb3NpdGlvbiA9IHN0YXJ0UG9zaXRpb24u
cHJldmlvdXMoQ2hhcmFjdGVyKTsKKyAgICAgICAgICAgICAgICBlbmRQb3NpdGlvbiA9IGVuZFBv
c2l0aW9uLm5leHQoQ2hhcmFjdGVyKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZWRn
ZVJhbmdlID0gUmFuZ2U6OmNyZWF0ZShyYW5nZS0+b3duZXJEb2N1bWVudCgpLCBzdGFydFBvc2l0
aW9uLCBlbmRQb3NpdGlvbik7CisgICAgICAgICAgICBzY2FuUmFuZ2VGb3JUZWxlcGhvbmVOdW1i
ZXJzKCplZGdlUmFuZ2UsIHBsYWluVGV4dChlZGdlUmFuZ2UuZ2V0KCkpLCBtYXJrZWRFZGdlUmFu
Z2VzKTsKKyAgICAgICAgfQogCi0gICAgICAgIHNjYW5SYW5nZUZvclRlbGVwaG9uZU51bWJlcnMo
KnRleHRDaHVuay5yYW5nZSgpLCB0ZXh0Q2h1bmsudGV4dCgpLCBtYXJrZWRSYW5nZXMpOworICAg
ICAgICAvLyBBZGQgYm90aCBvZiB0aGVzZSBzZXRzIG9mIHJhbmdlcyB0byB0aGUgZnVsbCBzZXQg
b2YgbWFya2VkIHJhbmdlcywgZG91YmxlIGNoZWNraW5nIHRvCisgICAgICAgIC8vIG1ha2Ugc3Vy
ZSB3ZSBkb24ndCBlbmQgdXAgd2l0aCB0d28gZXF1aXZhbGVudCByYW5nZXMgaW4gdGhlIGZ1bGwg
c2V0LgorICAgICAgICBmb3IgKGF1dG8mIGNodW5rUmFuZ2UgOiBtYXJrZWRDaHVua1Jhbmdlcykg
eworICAgICAgICAgICAgYm9vbCBtYXRjaGVzRWRnZVJhbmdlID0gZmFsc2U7CisgICAgICAgICAg
ICBmb3IgKGF1dG8mIGVkZ2VSYW5nZSA6IG1hcmtlZEVkZ2VSYW5nZXMpIHsKKyAgICAgICAgICAg
ICAgICBpZiAoYXJlUmFuZ2VzRXF1YWwoY2h1bmtSYW5nZS5nZXQoKSwgZWRnZVJhbmdlLmdldCgp
KSkgeworICAgICAgICAgICAgICAgICAgICBtYXRjaGVzRWRnZVJhbmdlID0gdHJ1ZTsKKyAgICAg
ICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBpZiAoIW1hdGNoZXNFZGdlUmFuZ2UpCisgICAgICAgICAgICAgICAgbWFy
a2VkUmFuZ2VzLmFwcGVuZChjaHVua1JhbmdlKTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAo
YXV0byYgcmFuZ2UgOiBtYXJrZWRFZGdlUmFuZ2VzKQorICAgICAgICAgICAgbWFya2VkUmFuZ2Vz
LmFwcGVuZChyYW5nZSk7CisKKyAgICAgICAgLy8gSWYgdGhlIGVkZ2UgcmFuZ2UncyBlbmQgcG9z
aXRpb24gaXMgcGFzdCB0aGUgZW5kIHBvc2l0aW9uIG9mIHRoZSBvcmlnaW5hbCByYW5nZSwgd2Un
cmUgZG9uZSBzY2FubmluZy4KKyAgICAgICAgaWYgKGVkZ2VSYW5nZSAmJiBlZGdlUmFuZ2UtPmVu
ZFBvc2l0aW9uKCkgPj0gZXh0ZW5kZWRSYW5nZS0+ZW5kUG9zaXRpb24oKSkKKyAgICAgICAgICAg
IGJyZWFrOwogICAgIH0KIAogICAgIC8vIE9ubHkgY29uc2lkZXIgcmFuZ2VzIHdpdGggYSBkZXRl
Y3RlZCB0ZWxlcGhvbmUgbnVtYmVyIGlmIHRoZXkgb3ZlcmxhcCB3aXRoIHRoZSBhY3R1YWwgc2Vs
ZWN0aW9uIHJhbmdlLgogICAgIFZlY3RvcjxSZWZQdHI8UmFuZ2U+PiBleHRlbmRlZE1hcmtlZFJh
bmdlczsKLSAgICBSZWZQdHI8UmFuZ2U+IHNlbGVjdGVkUmFuZ2UgPSBmcmFtZVNlbGVjdGlvbi50
b05vcm1hbGl6ZWRSYW5nZSgpOwogICAgIGZvciAoYXV0byYgcmFuZ2UgOiBtYXJrZWRSYW5nZXMp
IHsKICAgICAgICAgaWYgKHJhbmdlc092ZXJsYXAocmFuZ2UuZ2V0KCksIHNlbGVjdGVkUmFuZ2Uu
Z2V0KCkpKQogICAgICAgICAgICAgZXh0ZW5kZWRNYXJrZWRSYW5nZXMuYXBwZW5kKHJhbmdlKTsK
</data>
<flag name="review"
          id="259256"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>