Debugging With CMarkup
Have you ever been debugging code that uses CMarkup and wonder where the current position or child position is? As of CMarkup 6.2, there is a debugging feature in CMarkup exposing these positions in debug mode. It works by maintaining debug state member string pointers spying into the document at the start tag of the particular element. As you step through your code you can watch where the current main and child elements are in the m_pMainDS and m_pChildDS debug state members.

Note that these are string pointers into the actual document, not substrings, so they do not slow the XML object down. Your debugger (such as Visual Studio) will display any attributes and contents of the element, plus subsequent elements up to the string length limit of your debugger's string view. When there is no position, the pointer is NULL. You can gain real insights into the logic of the navigation and modification of your XML documents and discover a variety of information there. The debug state members do not exist in the release compile.
