<?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>6246</bug_id>
          
          <creation_ts>2005-12-26 13:45:54 -0800</creation_ts>
          <short_desc>TextIterator::rangeFromLocationAndLength() returns nil range for an empty document</short_desc>
          <delta_ts>2005-12-28 10:22:07 -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>HTML Editing</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</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="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>evan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>26679</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2005-12-26 13:45:54 -0800</bug_when>
    <thetext>If a document is such that TextIterator(rangeOfContents(doc).get()).atEnd() is true, 
TextIterator::rangeFromLocationAndLength() returns a nil range, which makes all functions that use it (e.g. 
firstRectForCharacterRange) very unhappy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26680</commentid>
    <comment_count>1</comment_count>
      <attachid>5291</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2005-12-26 13:53:07 -0800</bug_when>
    <thetext>Created attachment 5291
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26711</commentid>
    <comment_count>2</comment_count>
      <attachid>5291</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2005-12-27 01:38:28 -0800</bug_when>
    <thetext>Comment on attachment 5291
proposed patch

r=me</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>5291</attachid>
            <date>2005-12-26 13:53:07 -0800</date>
            <delta_ts>2005-12-27 01:38:28 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>PatchFor6242.txt</filename>
            <type>text/plain</type>
            <size>5415</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jv
b3QvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjE4NQpkaWZm
IC1wIC11IC1yMS4xODUgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCi0tLSBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cJMjUgRGVjIDIwMDUgMDU6MTE6NDEgLTAwMDAJMS4xODUKKysrIExheW91dFRlc3RzL0No
YW5nZUxvZwkyNiBEZWMgMjAwNSAyMTo1OToyNCAtMDAwMApAQCAtMSwzICsxLDE0IEBACisyMDA1
LTEyLTI3ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAbnlwb3AuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIC0gdGVzdCBmb3IgaHR0cDovL2J1
Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD02MjQ2CisgICAgICAgICAgVGV4
dEl0ZXJhdG9yOjpyYW5nZUZyb21Mb2NhdGlvbkFuZExlbmd0aCgpIHJldHVybnMgbmlsIHJhbmdl
IGZvciBhbiAKKyAgICAgICAgICBlbXB0eSBkb2N1bWVudAorCisgICAgICAgICogZWRpdGluZy9p
bnB1dC9yYW5nZS1mb3ItZW1wdHktZG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBlZGl0aW5nL2lucHV0L3JhbmdlLWZvci1lbXB0eS1kb2N1bWVudC5odG1sOiBBZGRlZC4K
KwogMjAwNS0xMi0yNCAgTWl0eiBQZXR0ZWwgIDxvcGVuZGFyd2luLm9yZ0BtaXR6cGV0dGVsLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBlc2VpZGVsLgpJbmRleDogTGF5b3V0VGVzdHMvZWRp
dGluZy9pbnB1dC9yYW5nZS1mb3ItZW1wdHktZG9jdW1lbnQtZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KZGlmZiAtTnB1IExheW91dFRlc3RzL2VkaXRpbmcvaW5wdXQvcmFuZ2UtZm9yLWVtcHR5LWRv
Y3VtZW50LWV4cGVjdGVkLnR4dAotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9pbnB1dC9yYW5nZS1m
b3ItZW1wdHktZG9jdW1lbnQtZXhwZWN0ZWQudHh0CTEgSmFuIDE5NzAgMDA6MDA6MDAgLTAwMDAK
KysrIExheW91dFRlc3RzL2VkaXRpbmcvaW5wdXQvcmFuZ2UtZm9yLWVtcHR5LWRvY3VtZW50LWV4
cGVjdGVkLnR4dAkyNiBEZWMgMjAwNSAxNzozNDoxNyAtMDAwMApAQCAtMCwwICsxLDQgQEAKK0VE
SVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorKDAsIDApOiAwLDYwMCwwLDAKKworCkluZGV4OiBMYXlv
dXRUZXN0cy9lZGl0aW5nL2lucHV0L3JhbmdlLWZvci1lbXB0eS1kb2N1bWVudC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KZGlmZiAtTnB1IExheW91dFRlc3RzL2VkaXRpbmcvaW5wdXQvcmFuZ2UtZm9yLWVtcHR5
LWRvY3VtZW50Lmh0bWwKLS0tIExheW91dFRlc3RzL2VkaXRpbmcvaW5wdXQvcmFuZ2UtZm9yLWVt
cHR5LWRvY3VtZW50Lmh0bWwJMSBKYW4gMTk3MCAwMDowMDowMCAtMDAwMAorKysgTGF5b3V0VGVz
dHMvZWRpdGluZy9pbnB1dC9yYW5nZS1mb3ItZW1wdHktZG9jdW1lbnQuaHRtbAkyNiBEZWMgMjAw
NSAxNzoyODoyMCAtMDAwMApAQCAtMCwwICsxLDQyIEBACis8SFRNTD4KKzxIRUFEPgorPE1FVEEg
aHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRG
LTgiPgorPC9IRUFEPgorPEJPRFkgc3R5bGU9IndvcmQtd3JhcDogYnJlYWstd29yZDsgLWtodG1s
LW5ic3AtbW9kZTogc3BhY2U7IC1raHRtbC1saW5lLWJyZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsg
Ij4KKzxzY3JpcHQ+CisgICAgdmFyIGNvbnNvbGVfbWVzc2FnZXMgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJvbCIpOworICAgIAorICAgIGZ1bmN0aW9uIGxvZyhtZXNzYWdlKQorICAgIHsKKyAg
ICAgICAgdmFyIGl0ZW0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpOworICAgICAgICBp
dGVtLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKFN0cmluZyhtZXNzYWdlKS5y
ZXBsYWNlKC8weFswLTlhLWZBLUZdezh9L2csICIweFhYWFhYWFhYIikucmVwbGFjZSgvXG4vZywg
IlxcbiIpLnJlcGxhY2UoL1x0L2csICJcXHQiKSkpOworICAgICAgICBjb25zb2xlX21lc3NhZ2Vz
LmFwcGVuZENoaWxkKGl0ZW0pOworICAgIH0KKyAgICAKKyAgICBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKSB7CisgICAgICAgIAorICAgICAgICB0cnkgeworICAgICAgICAKKyAgICAg
ICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgCisgICAg
ICAgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuc2V0UG9zaXRpb24oZG9jdW1lbnQuYm9keSwg
MCk7CisKKwkJCS8vIHNob3VsZCBub3QgYmUgKDAsIDAsIDAsIDApCisgICAgICAgICAgICBsb2co
IigwLCAwKTogIiArIHRleHRJbnB1dENvbnRyb2xsZXIuZmlyc3RSZWN0Rm9yQ2hhcmFjdGVyUmFu
Z2UoMCwgMCkpOworCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9ICIiOwor
CisgICAgICAgIH0gY2F0Y2ggKGV4KSB7CisgICAgICAgICAgICBsb2coIkV4Y2VwdGlvbjogIiAr
IGV4LmRlc2NyaXB0aW9uKTsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgdmFyIGNvbnNv
bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7CisgICAgICAgIGNvbnNvbGUuYXBwZW5k
Q2hpbGQoY29uc29sZV9tZXNzYWdlcyk7CisgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQoY29uc29sZSk7CisgICAgICAgIAorICAgIH0gZWxzZSB7CisgICAgICAgIGRvY3VtZW50Lndy
aXRlKCIoY2Fubm90IHJ1biBpbnRlcmFjdGl2ZWx5KSIpOworICAgIH0KKzwvc2NyaXB0PgorPC9C
T0RZPgorPC9IVE1MPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKSW5kZXg6IFdlYkNvcmUv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9XZWJDb3JlL0NoYW5nZUxv
Zyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS40MQpkaWZmIC1wIC11IC1yMS40MSBXZWJDb3JlL0No
YW5nZUxvZwotLS0gV2ViQ29yZS9DaGFuZ2VMb2cJMjUgRGVjIDIwMDUgMTg6Mjg6MjIgLTAwMDAJ
MS40MQorKysgV2ViQ29yZS9DaGFuZ2VMb2cJMjYgRGVjIDIwMDUgMjE6NTk6MjggLTAwMDAKQEAg
LTEsMyArMSwxNyBAQAorMjAwNS0xMi0yNyAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQG55cG9w
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAt
IGZpeCBodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lkPTYyNDYK
KyAgICAgICAgICBUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aW9uQW5kTGVuZ3RoKCkgcmV0
dXJucyBuaWwgcmFuZ2UgZm9yIGFuIAorICAgICAgICAgIGVtcHR5IGRvY3VtZW50CisKKyAgICAg
ICAgVGVzdDogZWRpdGluZy9pbnB1dC9yYW5nZS1mb3ItZW1wdHktZG9jdW1lbnQuaHRtbAorCisg
ICAgICAgICoga2h0bWwvZWRpdGluZy92aXNpYmxlX3RleHQuY3BwOgorICAgICAgICAoa2h0bWw6
OlRleHRJdGVyYXRvcjo6cmFuZ2VGcm9tTG9jYXRpb25BbmRMZW5ndGgpOgorICAgICAgICBIYW5k
bGUgdGhlIGNhc2Ugb2YgYW4gZW1wdHkgZG9jdW1lbnQgYW5kICgwLCAwKSByZXF1ZXN0ZWQgcmFu
Z2UuCisKIDIwMDUtMTItMjQgIE1pdHogUGV0dGVsICA8b3BlbmRhcndpbi5vcmdAbWl0enBldHRl
bC5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgZXNlaWRlbC4KSW5kZXg6IFdlYkNvcmUva2h0
bWwvZWRpdGluZy92aXNpYmxlX3RleHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9v
dC9XZWJDb3JlL2todG1sL2VkaXRpbmcvdmlzaWJsZV90ZXh0LmNwcCx2CnJldHJpZXZpbmcgcmV2
aXNpb24gMS40NApkaWZmIC1wIC11IC1yMS40NCBXZWJDb3JlL2todG1sL2VkaXRpbmcvdmlzaWJs
ZV90ZXh0LmNwcAotLS0gV2ViQ29yZS9raHRtbC9lZGl0aW5nL3Zpc2libGVfdGV4dC5jcHAJMjEg
RGVjIDIwMDUgMDI6MDU6MTEgLTAwMDAJMS40NAorKysgV2ViQ29yZS9raHRtbC9lZGl0aW5nL3Zp
c2libGVfdGV4dC5jcHAJMjYgRGVjIDIwMDUgMjE6NTk6MzEgLTAwMDAKQEAgLTEsNSArMSw2IEBA
CiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA0IEFwcGxlIENvbXB1dGVyLCBJbmMuICBBbGwgcmln
aHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA1IEFsZXhleSBQcm9za3VyeWFrb3Yu
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTk5NCw3ICs5OTUsMjEgQEAgUmFu
Z2VJbXBsICpUZXh0SXRlcmF0b3I6OnJhbmdlRnJvbUxvY2F0aQogCiAgICAgUmVmUHRyPFJhbmdl
SW1wbD4gdGV4dFJ1blJhbmdlOwogCi0gICAgZm9yIChUZXh0SXRlcmF0b3IgaXQocmFuZ2VPZkNv
bnRlbnRzKGRvYykuZ2V0KCkpOyAhaXQuYXRFbmQoKTsgaXQuYWR2YW5jZSgpKSB7CisgICAgVGV4
dEl0ZXJhdG9yIGl0KHJhbmdlT2ZDb250ZW50cyhkb2MpLmdldCgpKTsKKyAgICAKKyAgICBpZiAo
cmFuZ2VMb2NhdGlvbiA9PSAwICYmIHJhbmdlTGVuZ3RoID09IDApIHsKKyAgICAgICAgaW50IGV4
Y2VwdGlvbiA9IDA7CisgICAgICAgIHRleHRSdW5SYW5nZSA9IGl0LnJhbmdlKCk7CisgICAgICAg
IAorICAgICAgICByZXN1bHRSYW5nZS0+c2V0U3RhcnQodGV4dFJ1blJhbmdlLT5zdGFydENvbnRh
aW5lcihleGNlcHRpb24pLCAwLCBleGNlcHRpb24pOworICAgICAgICBhc3NlcnQoZXhjZXB0aW9u
ID09IDApOworICAgICAgICByZXN1bHRSYW5nZS0+c2V0RW5kKHRleHRSdW5SYW5nZS0+c3RhcnRD
b250YWluZXIoZXhjZXB0aW9uKSwgMCwgZXhjZXB0aW9uKTsKKyAgICAgICAgYXNzZXJ0KGV4Y2Vw
dGlvbiA9PSAwKTsKKyAgICAgICAgCisgICAgICAgIHJldHVybiByZXN1bHRSYW5nZTsKKyAgICB9
CisKKyAgICBmb3IgKDsgIWl0LmF0RW5kKCk7IGl0LmFkdmFuY2UoKSkgewogICAgICAgICBpbnQg
bGVuID0gaXQubGVuZ3RoKCk7CiAgICAgICAgIHRleHRSdW5SYW5nZSA9IGl0LnJhbmdlKCk7CiAK
</data>
<flag name="review"
          id="1104"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>