Hi all, I routinely run IBM's product, Purify, on all FDK clients we develop, and I have noticed a sharp increase in the numbers of warnings issued by Purify when running FrameMaker 7.2 on such clients compiled and linked with FDK 7.2.
For instance, I see a whole lot of Freeing Mismatched Memory (FMM) alerts. Per Purify's online help: "Purify reports a FMM message when the program allocates memory from one family of APIs and then deallocates the memory from a mismatched family. For example, a FMM message can occur when you use 'new' to allocate memory and 'free' to free the memory. You can also get this message when you use one heap to allocate memory and a wrong heap to deallocate the memory." These alerts occur frequently within modules internal to FrameMaker and are not due to anything done wrong by the client or plug-in. For instance, the Xalan-C dll, new to 7.2 (I believe?), is the cause of some of these problems: xalanc_1_8::XercesWrapperToXalanNodeMap::XercesWrapperToXalanNodeMap (void) [D:\Program Files\Adobe\FrameMaker7.2\Xalan-C_1_8.dll] Also, and perhaps related to the FMMs, there are frequent memory leaks recorded by Purify after FrameMaker exits normally. You can see these issues for yourself by compiling, linking, and running the "import" sample API that is delivered with the FrameMaker 7.2. FDK. When Purify runs this dll, one notable leak occurs on the F_ApiImport call itself. Yes, the params and returnParams are correctly deallocated after the call, so that is not the cause of the leak. For plug-ins designed to iterate many times, the above issues could, of course, result in crashes. Has anyone one else noticed this? Carl Haynie Seatech Publications, Inc. Content Development, FrameMaker Plug-ins, and Product Information Management Systems www.seatechpubs.com
