r=caillon, sr=brendan, a=asa
adds the ability to turn off the object tracking without having to disable the debugger. should make a dormant venkman less of a performance impact.
git-svn-id: svn://10.0.0.236/trunk@146022 18797224-902f-48f8-a5cc-f745e15eee43
a=sspitzer@netscape.com
return NS_ERROR_INVALID_ARG if asked to eval an empty string
git-svn-id: svn://10.0.0.236/trunk@142015 18797224-902f-48f8-a5cc-f745e15eee43
prevent any stack with a disabled frame from being debugged during single-stepping, or break-on-throw. Also adds versioning support to the jsdIDebuggerService interface.
git-svn-id: svn://10.0.0.236/trunk@141407 18797224-902f-48f8-a5cc-f745e15eee43
"add ability to get at function object for a jsdIScript"
add a |functionObject| attribute to the jsdIScript interface, which returns the function's JSObject as a jsdIValue
git-svn-id: svn://10.0.0.236/trunk@135432 18797224-902f-48f8-a5cc-f745e15eee43
don't leave gDeadScripts pointing at garbage. May or may not fix the problem at hand, but is an improvement in either case.
git-svn-id: svn://10.0.0.236/trunk@125124 18797224-902f-48f8-a5cc-f745e15eee43
Stop caching jsdIValues, it doesn't seem to be worth the lookup cost. This has the side effect of plugging the leak, as described in the bug.
also...
* Convert a few raw pointers to nsCOMPtrs
* Fix a bug where removing the last filter did not null out the list head,
causing a crash the next time filters were used.
* Track live jsdStackFrames, so we can invalidate them all when execution
continues. Without this, only the top frame is properly invalidated, and any
other frame accessed after a continue will do Bad Things.
* Add some debugging prints to GetInitAtService, which seems to be failing at
random times.
git-svn-id: svn://10.0.0.236/trunk@123613 18797224-902f-48f8-a5cc-f745e15eee43
bug 139883, "ErrorHookProc can be tricked into thinking it never finished running", r=peterv
fixes bad early return in jsds_ErrorHookProc
test for correct max params (12, not 8) in CreatePPLineMap
use nsnull instead of 0 for null pointer return value
git-svn-id: svn://10.0.0.236/trunk@120000 18797224-902f-48f8-a5cc-f745e15eee43
sr=shaver, r=jband
add JSD_IsStackFrameNative, IsStackFrameDebugger, and IsStackFrameConstructing
add similar attributes to jsdIStackFrame
tweak return values in jsds_FilterHook
don't include dummy stack frames in threadstates
bug 110387, "Crash on exiting venkman"
check to see if the debugger was turned off before going through with an unPause.
git-svn-id: svn://10.0.0.236/trunk@114496 18797224-902f-48f8-a5cc-f745e15eee43
adds jsdIValue::getWrappedValue() and jsdIService::wrapValue() methods to provid
e js scripts a way to convert between jsdIValues and "real" js values.
Also includes fix to not call breakpoint hook while paused, and changes jsdIFilt
er::glob attribute to jsdIFilter::globalObject, to match jsdIContext::globalObject
git-svn-id: svn://10.0.0.236/trunk@113854 18797224-902f-48f8-a5cc-f745e15eee43
implement the jsdIContext interface.
create only one jsdValue wrapper per unique jsval.
add executionContext property to jsdIStackFrame.
add enumerateContexts to jsdIDebuggerService.
add jsdIContextEnumerator interface.
git-svn-id: svn://10.0.0.236/trunk@113111 18797224-902f-48f8-a5cc-f745e15eee43
adds jsdIDebugHook interface, change the meaning of jsdIErrorHook.
error hook is called when an error occurs, and is given information about the error report.
debug hook is called when/if the error hook returns false, and is given information about the ececution state.
git-svn-id: svn://10.0.0.236/trunk@113100 18797224-902f-48f8-a5cc-f745e15eee43
use nsCOMPtr to avoid releasing a final reference via jsdScript::Invalidate()
git-svn-id: svn://10.0.0.236/trunk@112686 18797224-902f-48f8-a5cc-f745e15eee43
large addition to the jsd_xpc component allows arbitrary filtering of debug hooks by url pattern, line range, and global object. also adds ability to begin instrumenting jsscripts at app startup.
git-svn-id: svn://10.0.0.236/trunk@106689 18797224-902f-48f8-a5cc-f745e15eee43
remove venkman startup listener so we don't have to load the dll at startup.
checking into 0.9.5 branch also.
git-svn-id: svn://10.0.0.236/trunk@104808 18797224-902f-48f8-a5cc-f745e15eee43
init xpconnect on the debugger's default context so that xpconnect can use it when it has to. r=jband
git-svn-id: svn://10.0.0.236/trunk@102366 18797224-902f-48f8-a5cc-f745e15eee43