View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0002982||3 - Current Dev List||Maintenance||public||2018-12-11 12:21||2019-10-05 10:37|
|Priority||normal||Severity||minor||Reproducibility||have not tried|
|Target Version||Fixed in Version|
|Summary||0002982: CXMLMgrSDK is almost-unused reimplementation of CXMLMgr|
The applications share the CXMLMgr class to read and write XML-formatted data.
The CMigrateDlg in the Setup2.DLL library avoids the CXMLMgr class and uses, instead, a class named CXMLMgrSDK. This class is reimplemented from CXMLMgr, but avoids using MFC (CString, in particular) and any C-runtime library routines. It reimplements several CRTL routines, in fact.
Re-implementations of low-level functions, and of CXMLMgr itself, are unjustified and should be removed. We're better off with a single CXMLMgr implementation so we can fix bugs and add features in one single place.
|Tags||No tags attached.|
This checkin scopes a couple of global, static helper functions for XML/HTML formatting into the CXMLMgr class. Tight scoping is a tenet of good C++ programming:
Scoping these functions immediately revealed that some code which shoudl be using CXMLMgr (from HRDCommon) was instead depending on both CXMLMgr and CXMLMgrSDK (from Setup2). That dependency is rectified in the same checkin. Remedying this dependency further isolates the CXMLMgrSDK code in preparation for removal.