<?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>31375</bug_id>
          
          <creation_ts>2009-11-11 14:13:52 -0800</creation_ts>
          <short_desc>Web Inspector: breakpoints in named evals are not restored after a reload</short_desc>
          <delta_ts>2009-11-12 09:00:37 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Patrick Mueller">pmuellr</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bweinstein</cc>
    
    <cc>commit-queue</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>162677</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick Mueller">pmuellr</who>
    <bug_when>2009-11-11 14:13:52 -0800</bug_when>
    <thetext>If you have &quot;named evals&quot;, by virtual of using the //@sourceURL= comment annotation, breakpoints set in these scripts are not restored when the original page is reloaded.  This is a problem with frameworks like Dojo that use evals() for module loading during development.

The breakpoint sidebar will (I believe) show previously set breakpoints after a reload, but they&apos;re zombies.  Clicking on them will not take you to the source.  The breakpoints are also not actually set in the source anyway.  So there&apos;s no way to get rid of these zombie breakpoints.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162678</commentid>
    <comment_count>1</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-11-11 14:15:36 -0800</bug_when>
    <thetext>We could try to reinstall them by matching up the @sourceURL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162680</commentid>
    <comment_count>2</comment_count>
      <attachid>43002</attachid>
    <who name="Patrick Mueller">pmuellr</who>
    <bug_when>2009-11-11 14:28:03 -0800</bug_when>
    <thetext>Created attachment 43002
preliminary patch

The patches are actually simpler than that - the code was pretty much set up to handle this, except the calculated sourceURL wasn&apos;t used in ScriptsPanel.addScript(), and in the same method the _sourceIDMap[] map entry is simply set too late for the big if block to take advantage of it.

I&apos;m reusing an existing manual test case to test this, but haven&apos;t changed the manual description; I&apos;ll do that tomorrow, but thought folks might want to see the current patch.  Looks reasonable.

Also note, I was planning on reorging the breakpoint stuff with this change, but now I&apos;m thinking that I should just do the re-org in a separate patch.  I suspect it will be messy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162699</commentid>
    <comment_count>3</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-11-11 14:56:05 -0800</bug_when>
    <thetext>This patch looks good. Make a ChangeLog and I will r+ it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162896</commentid>
    <comment_count>4</comment_count>
      <attachid>43063</attachid>
    <who name="Patrick Mueller">pmuellr</who>
    <bug_when>2009-11-12 07:16:32 -0800</bug_when>
    <thetext>Created attachment 43063
proposed patch 2009/11/12 - a

per previous comment:

- in ScriptsPanel::addScript(), changed to use the calculated sourceURL rather than the original sourceURL.  The calculated one will have an actual name if the script was an eval that used the //@sourceURL= annotation comment

- in ScriptsPanel::addScript(), moved the cache-filling of _sourceIDmap[] to ABOVE the place it&apos;s used, later, in a called function, to paint the breakpoint marker in the source panel; without this fix, everything works, but the breakpoint markers are not repainted for these breakpoints

- added a new manual test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162916</commentid>
    <comment_count>5</comment_count>
      <attachid>43063</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-11-12 09:00:31 -0800</bug_when>
    <thetext>Comment on attachment 43063
proposed patch 2009/11/12 - a

Clearing flags on attachment: 43063

Committed r50880: &lt;http://trac.webkit.org/changeset/50880&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162917</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-11-12 09:00:37 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43002</attachid>
            <date>2009-11-11 14:28:03 -0800</date>
            <delta_ts>2009-11-12 07:16:32 -0800</delta_ts>
            <desc>preliminary patch</desc>
            <filename>31375.patch</filename>
            <type>text/plain</type>
            <size>1407</size>
            <attacher name="Patrick Mueller">pmuellr</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcwkocmV2
aXNpb24gNTA4MDcpCisrKyBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVs
LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0yNzUsNyArMjc1LDEyIEBACiAgICAgICAgICAgICB2YXIg
cmVzb3VyY2UgPSBXZWJJbnNwZWN0b3IucmVzb3VyY2VVUkxNYXBbc291cmNlVVJMXTsKICAgICAg
ICAgICAgIHJlc291cmNlLmFkZFNjcmlwdChzY3JpcHQpOwogICAgICAgICB9CisgICAgICAgIAor
ICAgICAgICBzb3VyY2VVUkwgPSBzY3JpcHQuc291cmNlVVJMOwogCisgICAgICAgIGlmIChzb3Vy
Y2VJRCkKKyAgICAgICAgICAgIHRoaXMuX3NvdXJjZUlETWFwW3NvdXJjZUlEXSA9IChyZXNvdXJj
ZSB8fCBzY3JpcHQpOworCiAgICAgICAgIGlmIChzb3VyY2VVUkwgaW4gdGhpcy5fYnJlYWtwb2lu
dHNVUkxNYXAgJiYgc291cmNlSUQpIHsKICAgICAgICAgICAgIHZhciBicmVha3BvaW50cyA9IHRo
aXMuX2JyZWFrcG9pbnRzVVJMTWFwW3NvdXJjZVVSTF07CiAgICAgICAgICAgICB2YXIgYnJlYWtw
b2ludHNMZW5ndGggPSBicmVha3BvaW50cy5sZW5ndGg7CkBAIC0yOTQsOSArMjk5LDYgQEAKICAg
ICAgICAgICAgIH0KICAgICAgICAgfQogCi0gICAgICAgIGlmIChzb3VyY2VJRCkKLSAgICAgICAg
ICAgIHRoaXMuX3NvdXJjZUlETWFwW3NvdXJjZUlEXSA9IChyZXNvdXJjZSB8fCBzY3JpcHQpOwot
CiAgICAgICAgIHRoaXMuX2FkZFNjcmlwdFRvRmlsZXNNZW51KHNjcmlwdCk7CiAgICAgfSwKIApJ
bmRleDogV2ViQ29yZS9tYW51YWwtdGVzdHMvaW5zcGVjdG9yL2hpZGRlbi1ldmFscy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvbWFudWFsLXRlc3RzL2luc3BlY3Rvci9oaWRkZW4tZXZhbHMu
aHRtbAkocmV2aXNpb24gNTA4MDcpCisrKyBXZWJDb3JlL21hbnVhbC10ZXN0cy9pbnNwZWN0b3Iv
aGlkZGVuLWV2YWxzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEwMCw2ICsxMDAsNyBAQAogCiBm
dW5jdGlvbiBjbGlja0hhbmRsZXIoKSB7CiAgICAgZGVidWdnZXI7CisgICAgZl9mcm9tX2pzX2Zp
bGUoKTsKICAgICBmX25hbWVkXzEoKTsKICAgICBmX3VubmFtZWRfMSgpOwogICAgIGZfbmFtZWRf
MigpOwpAQCAtMTE1LDQgKzExNiw1IEBACiB9CiAKIDwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Imhp
ZGRlbi1ldmFscy5qcyI+PC9zY3JpcHQ+CiA8IS0tIEVuZCAtLT4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43063</attachid>
            <date>2009-11-12 07:16:32 -0800</date>
            <delta_ts>2009-11-12 09:00:31 -0800</delta_ts>
            <desc>proposed patch 2009/11/12 - a</desc>
            <filename>31375.patch</filename>
            <type>text/plain</type>
            <size>4398</size>
            <attacher name="Patrick Mueller">pmuellr</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MDg3OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMDktMTEtMTIgIFBhdHJpY2sgTXVlbGxlciAgPFBhdHJpY2tfTXVl
bGxlckB1cy5pYm0uY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFdlYiBJbnNwZWN0b3I6IGJyZWFrcG9pbnRzIGluIG5hbWVkIGV2YWxzIGFyZSBu
b3QgcmVzdG9yZWQgYWZ0ZXIgYSByZWxvYWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTMxMzc1CisKKyAgICAgICAgTWFudWFsIHRlc3QgYWRkZWQKKwor
ICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUuYWRkU2NyaXB0KToKKyAgICAgICAg
KiBtYW51YWwtdGVzdHMvaW5zcGVjdG9yL2JwLWluLW5hbWVkLWV2YWwtYWZ0ZXItcmVsb2FkLmh0
bWw6IEFkZGVkLgorCiAyMDA5LTExLTEyICBCZW5qYW1pbiBQb3VsYWluICA8YmVuamFtaW4ucG91
bGFpbkBub2tpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJp
c3RpYW5zZW4uCkluZGV4OiBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVs
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFu
ZWwuanMJKHJldmlzaW9uIDUwODQwKQorKysgV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Nj
cmlwdHNQYW5lbC5qcwkod29ya2luZyBjb3B5KQpAQCAtMjc2LDYgKzI3NiwxMSBAQCBXZWJJbnNw
ZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHJlc291cmNlLmFk
ZFNjcmlwdChzY3JpcHQpOwogICAgICAgICB9CiAKKyAgICAgICAgc291cmNlVVJMID0gc2NyaXB0
LnNvdXJjZVVSTDsKKworICAgICAgICBpZiAoc291cmNlSUQpCisgICAgICAgICAgICB0aGlzLl9z
b3VyY2VJRE1hcFtzb3VyY2VJRF0gPSAocmVzb3VyY2UgfHwgc2NyaXB0KTsKKwogICAgICAgICBp
ZiAoc291cmNlVVJMIGluIHRoaXMuX2JyZWFrcG9pbnRzVVJMTWFwICYmIHNvdXJjZUlEKSB7CiAg
ICAgICAgICAgICB2YXIgYnJlYWtwb2ludHMgPSB0aGlzLl9icmVha3BvaW50c1VSTE1hcFtzb3Vy
Y2VVUkxdOwogICAgICAgICAgICAgdmFyIGJyZWFrcG9pbnRzTGVuZ3RoID0gYnJlYWtwb2ludHMu
bGVuZ3RoOwpAQCAtMjk0LDkgKzI5OSw2IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJv
dG90eXBlID0gewogICAgICAgICAgICAgfQogICAgICAgICB9CiAKLSAgICAgICAgaWYgKHNvdXJj
ZUlEKQotICAgICAgICAgICAgdGhpcy5fc291cmNlSURNYXBbc291cmNlSURdID0gKHJlc291cmNl
IHx8IHNjcmlwdCk7Ci0KICAgICAgICAgdGhpcy5fYWRkU2NyaXB0VG9GaWxlc01lbnUoc2NyaXB0
KTsKICAgICB9LAogCkluZGV4OiBXZWJDb3JlL21hbnVhbC10ZXN0cy9pbnNwZWN0b3IvYnAtaW4t
bmFtZWQtZXZhbC1hZnRlci1yZWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL21hbnVh
bC10ZXN0cy9pbnNwZWN0b3IvYnAtaW4tbmFtZWQtZXZhbC1hZnRlci1yZWxvYWQuaHRtbAkocmV2
aXNpb24gMCkKKysrIFdlYkNvcmUvbWFudWFsLXRlc3RzL2luc3BlY3Rvci9icC1pbi1uYW1lZC1l
dmFsLWFmdGVyLXJlbG9hZC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDY1IEBACis8c3R5
bGU+Y29kZXtiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjO308L3N0eWxlPgorPHA+PGI+VGVzdCBmb3Ig
PGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMxMzc1Ij5C
dWcgMzEzNzU8L2E+IC0gV2ViIEluc3BlY3RvcjogYnJlYWtwb2ludHMgaW4gbmFtZWQgZXZhbHMg
YXJlIG5vdCByZXN0b3JlZCBhZnRlciBhIHJlbG9hZDwvYj4KKworPHVsPgorPGxpPjxwPm9wZW4g
dGhpcyBwYWdlIHdpdGggV2ViIEluc3BlY3RvcgorPGxpPjxwPnN3aXRjaCB0byB0aGUgU2NyaXB0
cyBwYW5lbCwgZW5hYmxpbmcgZGVidWcgaWYgcmVxdWlyZWQKKzxsaT48cD50aGUgYXZhaWxhYmxl
IHNjcmlwdHMgaW4gdGhlIHNlbGVjdCBlbGVtZW50IHNob3VsZCBiZToKKzx1bD4KKzxsaT4ocHJv
Z3JhbSk6IGYxLmpzCis8bGk+KHByb2dyYW0pOiBmMi5qcworPGxpPmJwLWluLW5hbWVkLWV2YWwt
YWZ0ZXItcmVsb2FkLmh0bWwKKzwvdWw+Cis8bGk+PHA+SW4gPGNvZGU+KHByb2dyYW0pIGYxLmpz
PC9jb2RlPiwgc2V0IGEgYnJlYWtwb2ludCBvbiB0aGUgZmlyc3QKK2V4ZWN1dGFibGUgbGluZSBv
ZiB0aGUgZnVuY3Rpb24gPGNvZGU+ZjEoKTwvY29kZT4sIHRoZSBpbnZvY2F0aW9uIG9mIDxjb2Rl
PmRvTm90aGluZygpPC9jb2RlPi4KKzxsaT48cD5JbiA8Y29kZT4ocHJvZ3JhbSkgZjIuanM8L2Nv
ZGU+LCBzZXQgYSBicmVha3BvaW50IG9uIHRoZSBmaXJzdAorZXhlY3V0YWJsZSBsaW5lIG9mIHRo
ZSBmdW5jdGlvbiA8Y29kZT5mMigpPC9jb2RlPiwgdGhlIGludm9jYXRpb24gb2YgPGNvZGU+ZG9O
b3RoaW5nKCk8L2NvZGU+LgorPGxpPjxwPmNsaWNrIHRoaXMgYnV0dG9uOiA8aW5wdXQgaWQ9YnV0
dG9uIHR5cGU9YnV0dG9uIHZhbHVlPSJjbGljayBtZSI+Cis8bGk+PHA+ZGVidWdnZXIgc2hvdWxk
IHN0b3AgaW4gdGhlIDxjb2RlPmYxKCk8L2NvZGU+IGZ1bmN0aW9uLgorPGxpPjxwPnJlc3VtZSB0
aGUgZGVidWdnZXIKKzxsaT48cD5kZWJ1Z2dlciBzaG91bGQgc3RvcCBpbiB0aGUgPGNvZGU+ZjIo
KTwvY29kZT4gZnVuY3Rpb24gKHRoZSBmdW5jdGlvbiBpbiA8Y29kZT4ocHJvZ3JhbSkgZjIuanM8
L2NvZGU+KQorPGxpPjxwPnJlc3VtZSB0aGUgZGVidWdnZXIKKzxsaT48cD5zd2l0Y2ggdG8gdGhl
IHdlYiBwYWdlLCByZWxvYWQgdGhlIHdlYiBwYWdlLCBzd2l0Y2ggYmFjayB0byB3ZWIgaW5zcGVj
dG9yCis8bGk+PHA+aW4gdGhlIGJyZWFrcG9pbnRzIHNpZGViYXIgcGFuZWwsIGNsaWNrIG9uIHRo
ZSB0d28gYnJlYWtwb2ludHMgbGlzdGVkCithbmQgdGhlIHNvdXJjZSBmb3IgdGhvc2UgZnVuY3Rp
b25zIHNob3VsZCBiZSBzaG93biBpbiB0aGUgc291cmNlIHBhbmVsLCBhbmQKK3RoZSBwcmV2aW91
cyBicmVha3BvaW50IG1hcmtlcnMgc2hvdWxkIGJlIHZpc2libGUKKzxsaT48cD5jbGljayB0aGUg
ImNsaWNrIG1lIiBidXR0b24gYWJvdmUsIGFnYWluCis8bGk+PHA+ZGVidWdnZXIgc2hvdWxkIHN0
b3AgaW4gdGhlIDxjb2RlPmYxKCk8L2NvZGU+IGZ1bmN0aW9uLgorPGxpPjxwPnJlc3VtZSB0aGUg
ZGVidWdnZXIKKzxsaT48cD5kZWJ1Z2dlciBzaG91bGQgc3RvcCBpbiB0aGUgPGNvZGU+ZjIoKTwv
Y29kZT4gZnVuY3Rpb24uCis8bGk+PHA+cmVzdW1lIHRoZSBkZWJ1Z2dlcgorPC91bD4KKworPHA+
Tm90ZSB0aGF0IHdpdGhvdXQgdGhlIGZpeCBpbiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzEzNzUiPkJ1ZyAzMTM3NTwvYT4sCit0aGUgYnJlYWtwb2lu
dHMgd29uJ3Qgd29yayBhZnRlciByZWxvYWRpbmcgdGhlIHBhZ2UuCisKKzxzY3JpcHQ+CisKK2Z1
bmN0aW9uIGRvTm90aGluZygpIHsgLyogYWxsb3dzIG11bHRpLWxpbmUgZnVuY3Rpb25zLCBlYXNp
ZXIgdG8gZGVidWcgKi8gfTsKKworZXZhbChbCisgICAgImZ1bmN0aW9uIGYxKCkgeyIsCisgICAg
IiAgIGRvTm90aGluZygpOyIsCisgICAgIiAgIGNvbnNvbGUubG9nKG5ldyBEYXRlKCkgKyAnOiAg
ZjEoKSBjYWxsZWQnKTsiLAorICAgICJ9IiwKKyAgICAiLy9Ac291cmNlVVJMPWYxLmpzIgorXS5q
b2luKCJcbiIpKTsKKworZjIgPSBGdW5jdGlvbihbCisgICAgIiIsCisgICAgIiAgIGRvTm90aGlu
ZygpOyIsCisgICAgIiAgIGNvbnNvbGUubG9nKG5ldyBEYXRlKCkgKyAnOiAgZjIoKSBjYWxsZWQn
KTsiLAorICAgICIvL0Bzb3VyY2VVUkw9ZjIuanMiCitdLmpvaW4oIlxuIikpOworCit2YXIgYnV0
dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ1dHRvbiIpOworCitidXR0b24uYWRkRXZl
bnRMaXN0ZW5lcigiY2xpY2siLCBjbGlja0hhbmRsZXIsIGZhbHNlKTsKKworZnVuY3Rpb24gY2xp
Y2tIYW5kbGVyKCkgeworICAgIGYxKCk7CisgICAgZjIoKTsKK30KKworPC9zY3JpcHQ+Cis8IS0t
IEVuZCAtLT4K
</data>

          </attachment>
      

    </bug>

</bugzilla>