Closed Bug 355344 Opened 13 years ago Closed 13 years ago

Exceptions thrown by watchpoint show up in the next call to "eval"

Categories

(Core :: JavaScript Engine, defect, P3)

defect

Tracking

()

VERIFIED FIXED
mozilla1.9alpha1

People

(Reporter: jruderman, Assigned: mrbkap)

References

(Blocks 1 open bug)

Details

(Keywords: testcase, verified1.8.1.1)

Attachments

(1 file)

js> this.watch('x', function(){throw 'yikes'}); x = 3; try { eval("") } catch(e) { print("caught: " + e); }

caught: yikes
Attached patch FixSplinter Review
We weren't propagating the ok return value correctly...
Assignee: general → mrbkap
Status: NEW → ASSIGNED
Attachment #244278 - Flags: review?(brendan)
OS: Mac OS X 10.4 → All
Priority: -- → P3
Hardware: Macintosh → All
Target Milestone: --- → mozilla1.9alpha
Attachment #244278 - Flags: review?(brendan)
Attachment #244278 - Flags: review+
Attachment #244278 - Flags: approval1.8.1.1+
Flags: blocking1.8.1.1?
Fix checked into trunk.
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Checking in regress-355344.js;
/cvsroot/mozilla/js/tests/js1_5/Regress/regress-355344.js,v  <--  regress-355344.js
initial revision: 1.1
done
Flags: in-testsuite+
2006110700 windows/linux: The testcase fails in the browser with: 
Expected value 'setter: yikes', Actual value ''. Changing it so the test is at a top level script still fails. Changing the script so that you use a different object and watch its x property will pass however. 

Is the test as checked in wrong? Or is it a bug that watching |this.x| either in the test() function or at the top level fails in the browser?
verified fixed 1.9 20061108 windows/linux
Status: RESOLVED → VERIFIED
Flags: blocking1.8.1.1? → blocking1.8.1.1+
Fixed on the 1.8 branch:

Checking in jsdbgapi.c;
/cvsroot/mozilla/js/src/jsdbgapi.c,v  <--  jsdbgapi.c
new revision: 3.56.2.8; previous revision: 3.56.2.7
done

/be
Keywords: fixed1.8.1.1
verified fixed 20061125 1.8.1.1 windows/linux/mac*, 1.9 windows/linux
modified test to use user defined object to watch instead of |this| to help improve reproducibility in test library. I've been running locally with this modification for some time.

Checking in regress-355344.js;
/cvsroot/mozilla/js/tests/js1_5/Regress/regress-355344.js,v  <--  regress-355344.js
No longer blocks: 349611
Blocks: 349611
You need to log in before you can comment on or make changes to this bug.