How come 'IDebugThread2::EnumFrameInfo' method is called twice? RRS feed

  • Question

  • When SDM gets a breakpoint event, it calls IDebugThread2::EnumFrameInfo method to get the top stack frame, as I know.
    But here, I've found some weird actions like, functions for creating stack frame have been called twice, not once. (the hitting breakpoint event has occured just once though). It seems to waste costs by creating duplicated and unnecessary stack frames.

    How come the method is called twice? Any chance to make it called just once?
    Tuesday, October 6, 2009 6:25 AM


  • Other parts of the debugger may need to enumerate the stack frames with different flags. This depends mostly on what windows are open. There is no guarantee that it will only be called once.
    • Marked as answer by rchiodo - MSFT Tuesday, October 13, 2009 6:16 PM
    Tuesday, October 13, 2009 6:16 PM