Hi, I’m completely new to v8, so bare with me. Because the node debugging facility lacks the ability to define watchpoints (i.e. break when a variable changes), I was thinking that maybe I could do so at the VM level using lldb/gdb.
The code I’m trying to debug tries to access a global variable, which somewhere during execution gets set to `null`. A pseudo example looks like: ``` var doc = document debugger // <- here the object is a non-null value as expected // Enzyme (a React testing utility) renders an async React tree and somewhere during that period `document` gets set to `null` mount(<SomeComponentThatDoesAsyncRendering />) // <- an exception is raised because `document` is `null` ``` My thinking is: 1. I use node/v8’s JS debugger to hit a breakpoint where I know the variable is what I expect it to be 2. break using lldb/gdb, find the JS variable 3. set a native watchpoint or a conditional breakpoint on the VM code that assigns variables for the address of the JS variable 4. when the native breakpoint hits, get a JS execution stack trace to find the location that is assigning the new (`null`) value Does this make any sense? Cheers, Eloy -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
