Action codes:
+ = Examined, looks fine. Some of these were fixed by Bob and are not
fine in the CdrServer from last week.
- = Unexamined, looks okay based on what I see in this file
& = Examined, looks wrong, fixed it (or tried to)
= = Same as '&' except that the change is already recorded elsewhere
? = Unchanged but maybe should be.
Indented comments appear below some lines. The comment refers to the line
above.
Note:
I removed all of the following patterns from the file after quick checks:
"#include <.*>"
"std::vector<.*>"
"std::pair<.*>"
"std::set<.*>"
": \*" Comments
": *\/\/" Comments
[1003 lines shown in this report]
SELECT.*title
------------------------------
+ CdrDoc.cpp:176: std::string qry = "SELECT id, title_filter, xml_schema "
& CdrDoc.cpp:497: "SELECT v.val_status, v.val_date, v.publishable, v.title, v.xml, "
Entity conversion done on the selection getString - fixed
& CdrDocTypes.cpp:119: cdr::db::ResultSet r = s.executeQuery("SELECT d.title"
Existing code was fine but I changed it to conform to new convention that
does the conversion on output instead of database retrieval.
& CdrDocTypes.cpp:611: cdr::db::ResultSet r = s.executeQuery(" SELECT d.title, b.data "
Added entity conversion of title and css to elements in XML string:
"titlecss"
+ CdrFilter.cpp:1032: const char* const query = " SELECT title "
See problem on line 1041
- CdrFilter.cpp:1054: std::string qry = "SELECT xml FROM document WHERE title = ?";
& CdrLink.cpp:564: "SELECT DISTINCT source_doc, title, target_frag "
No bug on this line but there was a bug on line 580 that inserted the
title into something that would become XML without converting entities.
Fixed line 580
& CdrLink.cpp:2320: query = "SELECT title FROM document WHERE id = ?";
Again, later use of unconverted title on line 2332. Fixed.
+ CdrReport.cpp:1282: string query = "SELECT DISTINCT d.id, d.title "
+ CdrReport.cpp:1323: " SELECT DISTINCT d.id, d.title "
entConvert
------------------------------
? CdrCache.cpp:315: cdr::entConvert(cdr::dom::getTextContent(node)).toUtf8();
This is wrong by the current convention. Should do the conversion later.
However I'm not certain that none of the complex code for upcoding and
tree walking depends on it. So I'm leaving it alone.
& CdrDoc.cpp:396: title = cdr::entConvert (rs.getString (3));
Entity conversion done on the selection getString - fixed
& CdrDoc.cpp:401: comment = cdr::entConvert (rs.getString (8));
Entity conversion done on the selection getString - fixed
& CdrDoc.cpp:518: title = cdr::entConvert (rs.getString(4));
Entity conversion done on the selection getString - fixed
+ CdrDoc.cpp:1296: + L" " + cdr::entConvert(title)
= CdrDocTypes.cpp:128: String name = cdr::entConvert(r.getString(1));
See previous CdrDocTypes.cpp: 119
- CdrDocTypes.cpp:264: resp << L"" << cdr::entConvert(*j++)
+ CdrDom.cpp:296: os << cdr::entConvert(value);
+ CdrDom.cpp:299: os << L"" << name << L" " << cdr::entConvert(value) << L"?>";
+ CdrDom.cpp:319: cdr::entConvert(attribute.getNodeValue());
& CdrFilter.cpp:1041: return cdr::entConvert(title);
Existing code worked but I changed it to conform to new convention that
does the conversion on output instead of database retrieval.
There is only one line that invokes this static function. I fixed it.
+ CdrFilter.cpp:1903: << cdr::entConvert(name)
+ CdrFilter.cpp:1905: << cdr::entConvert(desc)
+ CdrFilter.cpp:1908: response << L"" << cdr::entConvert(notes)
+ CdrFilter.cpp:1945: << cdr::entConvert(name)
+ CdrFilter.cpp:1952: << cdr::entConvert(name)
+ CdrFilter.cpp:2066: << cdr::entConvert(name)
+ CdrFilter.cpp:2106: << cdr::entConvert(title)
& CdrFilter.cpp:2409: cdr::String wValue = cdr::entConvert(rs.getString(i));
Changed for new convention. The change is actually slightly more
efficient.
& CdrGetDoc.cpp:183: cdr::String title = cdr::entConvert(rs.getString(3));
Fixed for new conventions
& CdrGetDoc.cpp:186: cdr::String comment = cdr::entConvert(rs.getString(6));
Fixed for new conventions
+ CdrGetDoc.cpp:309: cdrDoc += readOnlyWrap (cdr::entConvert(docVer->title), L"DocTitle")
This one looks like it was a double conversion in the past, but CdrDoc
constructor now fixed to pass an unconverted string.
+ CdrGetDoc.cpp:317: cdrDoc += readOnlyWrap (cdr::entConvert(docVer->comment),
& CdrGetDoc.cpp:467: cdr::String title = cdr::entConvert(rs.getString(3));
Fixed for new conventions
& CdrGetDoc.cpp:468: cdr::String comment = cdr::entConvert(rs.getString(4));
Fixed for new conventions
& CdrGetDoc.cpp:523: cdr::String title = cdr::entConvert(rs.getString(3));
Fixed for new conventions
& CdrGetDoc.cpp:524: cdr::String comment = cdr::entConvert(rs.getString(4));
Fixed for new conventions
+ CdrGlossaryMap.cpp:84: response << L"" << cdr::entConvert(name) << L"";
+ CdrGlossaryMap.cpp:87: response << L"" << cdr::entConvert(*phrase)
+ CdrGlossaryMap.cpp:143: response << L"" << cdr::entConvert(name) << L"";
+ CdrGlossaryMap.cpp:146: response << L"" << cdr::entConvert(*phrase)
+ CdrLink.cpp:2225: id, cdr::entConvert(title).c_str());
+ CdrLinkProcs.cpp:990: id, cdr::entConvert(title).c_str());
+ CdrMergeProt.cpp:209: cdr::String encoded = cdr::entConvert(value);
& CdrReport.cpp:584: cdr::String title = cdr::entConvert(rs.getString(2));
Changed 584, 593 and 621 to follow new convention of converting upon
output rather than database fetch.
& CdrReport.cpp:666: cdr::String title = cdr::entConvert(rs.getString(2));
Changed lines 668, 671 for new convention.
+ CdrReport.cpp:791: << cdr::entConvert(poName)
+ CdrReport.cpp:865: << cdr::entConvert(*titleIter++)
& CdrReport.cpp:932: cdr::String termName = cdr::entConvert(rs.getString(2));
& CdrReport.cpp:933: cdr::String menuType = cdr::entConvert(rs.getString(3));
& CdrReport.cpp:934: cdr::String menuStatus = cdr::entConvert(rs.getString(4));
& CdrReport.cpp:937: cdr::String sortString = cdr::entConvert(rs.getString(7));
Changed all four of the above for new convention.
+ CdrReport.cpp:949: << cdr::entConvert(displayName)
+ CdrReport.cpp:1058: << cdr::entConvert(value) << L"\n";
- CdrReport.cpp:1303: << cdr::entConvert(name)
- CdrReport.cpp:1348: << cdr::entConvert(title)
+ CdrSearch.cpp:124: cdr::String title = cdr::entConvert(rs.getString(2));
Took this one on faith. It would take a lot of backtracing to find an
error, but errors are hardly ever in extra entConverts.
- CdrString.cpp:160:cdr::String cdr::entConvert(const String& inStr, bool doQuotes)
+ CdrVersion.cpp:1177: << entConvert(comment.c_str())
+ CdrXsd.cpp:517: << cdr::entConvert(rules[i].getContext(), true)
+ CdrXsd.cpp:524: << cdr::entConvert(assertion.getTest(), true)
+ CdrXsd.cpp:528: << cdr::entConvert(msg, true)
"<.*>" - but removed all of the following after quick check on each pattern
------------------------------
+ CdrActions.cpp:39: resp = L"\n";
+ CdrActions.cpp:42: resp += L"" + name
+ CdrActions.cpp:43: + L"" + flag
+ CdrActions.cpp:44: + L"\n";
+ CdrActions.cpp:47: return L"\n";
+ CdrActions.cpp:49: return resp + L"\n";
+ CdrActions.cpp:94: cdr::String resp = L""
+ CdrActions.cpp:95: L"" + name + L""
+ CdrActions.cpp:96: L"" + flag + L""
& CdrActions.cpp:97: L"" + comment + L""
Wrapped comment with entConvert in case we have "This does this & that"
Left actions alone on the theory that we're not going to put "THIS&THAT"
in an action name.
+ CdrActions.cpp:98: L"";
+ CdrActions.cpp:159: return L"";
+ CdrActions.cpp:217: " AND doc_type <> 1";
+ CdrActions.cpp:263: return L"";
+ CdrActions.cpp:316: return L" \n";
- CdrAddGrp.cpp:19:typedef std::list AuthList;
- CdrAddGrp.cpp:153: return L" \n";
- CdrAddUsr.cpp:139: return L" \n";
+ CdrCache.cpp:422: nameXml = makeTermStart() + "";
+ CdrCache.cpp:444: ">" + pParent->getName() +
+ CdrCache.cpp:445: "\n";
+ CdrCache.cpp:450: familyXml += "\n";
+ CdrCache.cpp:470: termStart += cdrRef + ">\n " + name + "\n";
See comment for CdrCache.cpp:315. All of these would be potentially
affected if I fix 315, so I've left them all alone.
+ CdrCache.cpp:542: return cdr::String(L"");
- CdrCheckAuth.cpp:64: return L" \n";
+ CdrCheckAuth.cpp:65: cdr::String response = L" \n";
+ CdrCheckAuth.cpp:73: response += L" "
+ CdrCheckAuth.cpp:75: + L"";
+ CdrCheckAuth.cpp:77: response += L""
+ CdrCheckAuth.cpp:79: + L"";
+ CdrCheckAuth.cpp:80: response += L"\n";
+ CdrCheckAuth.cpp:83: response += L" \n";
All of above are returning ACTION strings like "ADD DOCUMENT", no real
free text here.
+ CdrCommand.cpp:248: return L" <" + name + L"Resp>\n Got your Cdr" + name +
+ CdrCommand.cpp:249: L" command ... can't process it yet.\n "
+ CdrCtl.cpp:143: return L"<" + setCtlRespStr + L"Resp/>";
- CdrDOMtoString.cpp:93: result = "\n";
+ CdrDOMtoString.cpp:138: result += "" + nodeName + L'>';
+ CdrDOMtoString.cpp:163: result = "";
+ CdrDOMtoString.cpp:169: result = "";
The function DOMtoString looks like it could be called for data that
would need entity conversion, but I can't find that it is ever called,
anywhere.
CVS documentation says Mike Rubenstein added this in 2000 but it was
taken out of the system in 2002.
- CdrDbConnection.cpp:168: rc = SQLConnect(hdbc, const_cast(dsn), SQL_NTS,
- CdrDbConnection.cpp:169: const_cast(uid), SQL_NTS,
- CdrDbConnection.cpp:170: const_cast(pwd), SQL_NTS);
- CdrDbConnection.cpp:223: master(const_cast(&c))
- CdrDbConnection.cpp:244: master = const_cast(&c);
- CdrDbConnection.cpp:365: reinterpret_cast(setting),
- CdrDbConnection.cpp:499: return Connection(reinterpret_cast(dsn.c_str()),
- CdrDbConnection.cpp:500: reinterpret_cast(uid.c_str()),
- CdrDbConnection.cpp:501: reinterpret_cast(pwd.c_str()),
- CdrDbPreparedStatement.cpp:93: return static_cast(this)->executeQuery(query.c_str());
- CdrDbPreparedStatement.cpp:115: return static_cast(this)->executeUpdate(query.c_str());
- CdrDbResultSet.cpp:185: if (pos < 1 || pos > metaData.getColumnCount())
- CdrDbResultSet.cpp:251: if (pos < 1 || pos > metaData.getColumnCount())
- CdrDelGrp.cpp:70: return L" \n";
- CdrDelUsr.cpp:65: return L" \n";
+ CdrDoc.cpp:1214: cdr::String resp = cdr::String (L" \n"
+ CdrDoc.cpp:1215: + L" " + doc.getTextId() + L"\n"
+ CdrDoc.cpp:1237: resp += L" \n";
- CdrDoc.cpp:1295: + L"\n"
+ CdrDoc.cpp:1296: + L" " + cdr::entConvert(title)
- CdrDoc.cpp:1297: + L"\n"
- CdrDoc.cpp:1298: + L" " + activeStatus
- CdrDoc.cpp:1299: + L"\n"
- CdrDoc.cpp:1300: + L"\n"
- CdrDoc.cpp:1302: + L"\n\n";
- CdrDoc.cpp:1495: cdr::String resp = L" \n"
- CdrDoc.cpp:1496: L" " + docIdStr + L"\n";
- CdrDoc.cpp:1503: return (resp + L" \n");
- CdrDoc.cpp:1638: if (revFilterLevel < 1 || revFilterLevel > 3)
+ CdrDoc.cpp:1829: cdr::String response = L" " +
+ CdrDoc.cpp:1831: L"\n";
- CdrDoc.cpp:2129: return L"";
- CdrDoc.cpp:2190: return (L"");
- CdrDoc.cpp:2715: L"\n"
- CdrDoc.cpp:2720: \nL"
- CdrDoc.cpp:2722: L"\n"
- CdrDoc.cpp:2723: L" \n"
- CdrDoc.cpp:2724: L" \n"
- CdrDoc.cpp:2725: L" \n"
- CdrDoc.cpp:2726: L"\n"
- CdrDoc.cpp:2741: L"\n"
- CdrDoc.cpp:2742: L"\n"
- CdrDoc.cpp:2743: L"@@DummyCdrId@@\n"
- CdrDoc.cpp:2744: L"\n"
- CdrDoc.cpp:2745: L"\n"
- CdrDoc.cpp:2746: L"\n"
- CdrDoc.cpp:2747: L"\n"
- CdrDoc.cpp:2754: L"\n"
- CdrDoc.cpp:2755: L"\n"
- CdrDoc.cpp:2756: L"\n"
- CdrDoc.cpp:2757: L"\n"
- CdrDoc.cpp:2758: L"\n"
- CdrDoc.cpp:2759: L"\n";
- CdrDoc.cpp:3012: query += " AND id <> ?";
- CdrDoc.cpp:3060: os << L"";
- CdrDoc.cpp:3070: os << L"" << stringDocId(id) << L"";
- CdrDoc.cpp:3081: os << L"";
An argument could be made for converting this, but I wasn't
sure and left it alone.
- CdrDoc.cpp:3254: bool inComment; // We're inside an xml comment
- CdrDocTypes.cpp:93: response = L" \n";
+ CdrDocTypes.cpp:94: response += L" " + name + L"\n";
+ CdrDocTypes.cpp:97: return L" \n";
+ CdrDocTypes.cpp:99: return response + L" \n";
+ CdrDocTypes.cpp:132: response = L"";
& CdrDocTypes.cpp:133: response += L"" + name + L"";
Fixed by Bob
+ CdrDocTypes.cpp:136: return L"";
+ CdrDocTypes.cpp:138: return response + L"";
- CdrDocTypes.cpp:181: static_cast(node);
- CdrDocTypes.cpp:231: std::auto_ptr schemaPtr(schema);
- CdrDocTypes.cpp:246: << L"'>";
- CdrDocTypes.cpp:248: resp << L"makeDtd(schemaName) : L"")
- CdrDocTypes.cpp:250: << L"]]>";
- CdrDocTypes.cpp:251: resp << L""
- CdrDocTypes.cpp:253: << L"";
+ CdrDocTypes.cpp:261: resp << L"";
+ CdrDocTypes.cpp:264: resp << L"" << cdr::entConvert(*j++)
+ CdrDocTypes.cpp:265: << L"";
- CdrDocTypes.cpp:266: resp << L"";
- CdrDocTypes.cpp:271: resp << L"";
+ CdrDocTypes.cpp:274: resp << L"" << *iter++ << L"";
Works because Element names can't have entities.
- CdrDocTypes.cpp:275: resp << L"";
& CdrDocTypes.cpp:278: resp << L"" << comment << L"";
Extracting comment from the database and inserting it into serial XML.
- CdrDocTypes.cpp:279: resp << L"";
- CdrDocTypes.cpp:305: static_cast(node);
- CdrDocTypes.cpp:406: return L"";
- CdrDocTypes.cpp:426: static_cast(node);
- CdrDocTypes.cpp:515: return L"";
- CdrDocTypes.cpp:540: static_cast(node);
- CdrDocTypes.cpp:591: return L"";
- CdrDocTypes.cpp:620: cdr::String resp = L"";
= CdrDocTypes.cpp:628: resp += L"" + title + L""
Fixed, see above
= CdrDocTypes.cpp:629: + css + L"";
Fixed, see above
- CdrDocTypes.cpp:633: return resp + L"";
+ CdrDom.cpp:242: pNode = static_cast
+ CdrDom.cpp:299: os << L"" << name << L" " << cdr::entConvert(value) << L"?>";
- CdrDom.cpp:303: os << L"";
- CdrDom.cpp:335: os << L">";
? CdrDom.cpp:340: os << L"" << name << L">";
? CdrDom.cpp:343: os << L"/>";
? CdrDom.cpp:356: os << L"";
? CdrDom.cpp:359: os << L"";
I'm not certain about the above '?' lines. But if they were wrong, wouldn't
we know about it by now? Or would we? This one is rather deep and I
don't have time for a deep investigation right now.
- CdrExternalMap.cpp:97: return L"\n";
- CdrFilter.cpp:69: vector& filters,
- CdrFilter.cpp:76: vector& filterSet,
- CdrFilter.cpp:122: result += static_cast(c);
- CdrFilter.cpp:157: vector parms;
- CdrFilter.cpp:424: vector uri_list;
- CdrFilter.cpp:455: ThreadData* td = static_cast(thread_data);
- CdrFilter.cpp:481: static_cast(thread_data)->filter_messages
+ CdrFilter.cpp:482: += "" + msg + "\n";
Think this is okay.
- CdrFilter.cpp:517: ThreadData* thread_data = static_cast(data);
- CdrFilter.cpp:593: && !isdigit(static_cast(version_str[0]))
+ CdrFilter.cpp:630: u.doc = ""
+ CdrFilter.cpp:632: + "";
- CdrFilter.cpp:644: u.doc = "Y";
- CdrFilter.cpp:664: u.doc = "" + thread_data->DocId.toUtf8() + "";
- CdrFilter.cpp:679: u.doc = string("") + buf + "";
+ CdrFilter.cpp:684: u.doc = string("") + getPrettyUrl(parms).toUtf8() +
+ CdrFilter.cpp:685: "";
+ CdrFilter.cpp:749: static_cast(data)->uri_list[handle].inuse = false;
The getPrettyUrl() code rolls entity conversion by hand. I decided to
leave it alone rather than touch it. It's only called in one place and
it does work. (Sometimes it seems wiser to make an exception than follow
the rule.)
+ CdrFilter.cpp:758: ThreadData* thread_data = static_cast(data);
- CdrFilter.cpp:790: ThreadData* thread_data = static_cast(data);
- CdrFilter.cpp:1084: vector filters;
- CdrFilter.cpp:1128: vector filters;
- CdrFilter.cpp:1157: static_cast(child);
- CdrFilter.cpp:1202: static_cast(child);
- CdrFilter.cpp:1249: pvector.push_back(pair(name, value));
+ CdrFilter.cpp:1269: result = output ? "\n" : "";
+ CdrFilter.cpp:1271: result += "" + messages + "\n";
Think this is right.
+ CdrFilter.cpp:1273: return L""
+ CdrFilter.cpp:1275: + L"\n";
- CdrFilter.cpp:1294: vector& filters,
- CdrFilter.cpp:1358: vector& filterSet,
- CdrFilter.cpp:1623: L""
See note above on getPrettyUrl() for this and following lines
- CdrFilter.cpp:1627: L" "
- CdrFilter.cpp:1629: L" " + guid + L""
- CdrFilter.cpp:1630: L" "
- CdrFilter.cpp:1631: L" "
- CdrFilter.cpp:1632: L" "
- CdrFilter.cpp:1633: L"";
- CdrFilter.cpp:1701: static_cast(child);
- CdrFilter.cpp:1711: static_cast(child);
+ CdrFilter.cpp:1902: response << L""
+ CdrFilter.cpp:1904: << L""
+ CdrFilter.cpp:1906: << L"";
+ CdrFilter.cpp:1908: response << L"" << cdr::entConvert(notes)
+ CdrFilter.cpp:1909: << L"";
+ CdrFilter.cpp:1944: << L"'>"
+ CdrFilter.cpp:1946: << L"";
+ CdrFilter.cpp:1951: << L"'>"
+ CdrFilter.cpp:1953: << L"";
+ CdrFilter.cpp:1956: response << L"";
- CdrFilter.cpp:2033: return L"";
- CdrFilter.cpp:2053: response << L"";
- CdrFilter.cpp:2065: << L"'>"
+ CdrFilter.cpp:2067: << L"";
+ CdrFilter.cpp:2069: response << L"";
+ CdrFilter.cpp:2090: response << L"";
+ CdrFilter.cpp:2105: << L"'>"
+ CdrFilter.cpp:2107: << L"";
+ CdrFilter.cpp:2109: response << L"";
- CdrFilter.cpp:2179: return "0";
- CdrFilter.cpp:2182: return "0";
- CdrFilter.cpp:2194: return "0";
- CdrFilter.cpp:2197: os << "" << versionNum << "";
- CdrFilter.cpp:2206: return "";
- CdrFilter.cpp:2213: return "";
- CdrFilter.cpp:2215: os << "" << parms.substr(0, 5) << "";
- CdrFilter.cpp:2277: return "" + latestDate.substr(0, 10)
- CdrFilter.cpp:2278: + "";
- CdrFilter.cpp:2280: return "" + lastModDate.substr(0, 10)
- CdrFilter.cpp:2281: + "";
- CdrFilter.cpp:2285: return "" + dateFirstPub.toUtf8().substr(0, 10)
- CdrFilter.cpp:2286: + "";
- CdrFilter.cpp:2287: return "";
- CdrFilter.cpp:2332: vector qryParms;
+ CdrFilter.cpp:2335: string result("\n");
- CdrFilter.cpp:2393: vector colNames;
- CdrFilter.cpp:2404: sprintf(buf, "\n ", rowId);
& CdrFilter.cpp:2419: result += ">" + wValue.toUtf8() + "";
Fixed along with fix on line 2409
- CdrFilter.cpp:2423: result += "\n
";
- CdrFilter.cpp:2428: result += "\n";
- CdrFilter.cpp:2529: result = "\n\n";
- CdrFilter.cpp:2532: result += " ";
- CdrFilter.cpp:2534: result += "\n";
- CdrFilter.cpp:2538: result += "\n";
- CdrFilter.cpp:2673: return "";
- CdrFilter.cpp:2682: return "DROP";
- CdrFilter.cpp:2690: return "";
- CdrFilter.cpp:2694: os << "" << idString.toUtf8() << "";
- CdrGetDoc.cpp:200: + L"'>\n\n";
- CdrGetDoc.cpp:214: cdrDoc += L"\n";
- CdrGetDoc.cpp:239: cdrDoc += L"\n";
- CdrGetDoc.cpp:300: + L"'>\n\n";
+ CdrGetDoc.cpp:321: cdrDoc += L"\n";
+ CdrGetDoc.cpp:335: cdrDoc += L"\n";
- CdrGetDoc.cpp:408: return (L"\n\n");
- CdrGetDoc.cpp:433: return (L""
- CdrGetDoc.cpp:434: + encodedBlob + L"\n\n");
- CdrGetDoc.cpp:473: cdr::String cdrDoc = cdr::String(L"")
- CdrGetDoc.cpp:475: + L"";
- CdrGetDoc.cpp:479: cdrDoc += cdr::String(L"") + valDate + L"";
& CdrGetDoc.cpp:481: cdrDoc += cdr::String(L"") + title + L"";
Fixed as part of line 321
& CdrGetDoc.cpp:483: cdrDoc += cdr::String(L"") + comment + L"";
Fixed as part of line 467
& CdrGetDoc.cpp:485: cdrDoc += L"" + rrString + L"";
Fixed as part of line 468
- CdrGetDoc.cpp:487: return L"" + cdrDoc
- CdrGetDoc.cpp:489: + L"\n";
- CdrGetDoc.cpp:528: cdr::String cdrDoc = cdr::String(L"")
- CdrGetDoc.cpp:530: + L"";
- CdrGetDoc.cpp:534: cdrDoc += cdr::String(L"") + valDate + L"";
& CdrGetDoc.cpp:536: cdrDoc += cdr::String(L"") + title + L"";
Fixed as part of line 523
& CdrGetDoc.cpp:538: cdrDoc += cdr::String(L"") + comment + L"";
Fixed as part of line 524
- CdrGetDoc.cpp:540: return L"" + cdrDoc
- CdrGetDoc.cpp:542: + L"\n";
- CdrGetDoc.cpp:596: cdrDoc += L"" + date + L""
- CdrGetDoc.cpp:597: + user + L"";
- CdrGetDoc.cpp:624: cdrDoc += L"" + date + L""
- CdrGetDoc.cpp:625: + user + L"";
- CdrGetDoc.cpp:634: cdrDoc += L"" + date + L"";
- CdrGetDoc.cpp:719: cdr::String lock = "N"; // Default value of element
- CdrGetDoc.cpp:721: cdr::String version = L"0"; // Default value of element
- CdrGetDoc.cpp:730: static_cast(commandNode);
- CdrGetDoc.cpp:873: cdr::String docStr = L"\n" + readOnlyWrap (idStr, L"DocId");
& CdrGetDoc.cpp:924: return (docStr + L"\n");
+ CdrGetGrp.cpp:60: cdr::String response = cdr::String(L" \n"
+ CdrGetGrp.cpp:61: L" ")
+ CdrGetGrp.cpp:63: + L"\n";
- CdrGetGrp.cpp:80: response += L" " + action + L"";
- CdrGetGrp.cpp:82: response += L"" + docType + L"";
- CdrGetGrp.cpp:83: response += L"\n";
- CdrGetGrp.cpp:98: response += L" " + usrRs.getString(1) + L"\n";
& CdrGetGrp.cpp:102: response += L" " + comment + L"\n";
Comment is the only field that could have reserved entity chars in this
- CdrGetGrp.cpp:106: return response + L" \n";
+ CdrGetTree.cpp:51: resp << L"\n";
- CdrGetTree.cpp:61: resp << L"\n";
- CdrGetTree.cpp:65: resp << L"" << child << L""
- CdrGetTree.cpp:66: << L"" << parent << L"\n";
- CdrGetTree.cpp:68: resp << L"\n";
- CdrGetTree.cpp:71: resp << L"\n";
- CdrGetTree.cpp:78: resp << L"" << id << L""
& CdrGetTree.cpp:79: << L"" << title << L"\n";
Term can have chars. Fixed. Rest of what goes into the XML are integers
- CdrGetTree.cpp:81: resp << L"\n";
- CdrGetTree.cpp:84: resp << L"\n";
& CdrGetUsr.cpp:87: cdr::String response = cdr::String(L" \n"
& CdrGetUsr.cpp:88: L" ")
& CdrGetUsr.cpp:90: + L"\n"
& CdrGetUsr.cpp:91: + L" "
& CdrGetUsr.cpp:93: + L"\n";
& CdrGetUsr.cpp:95: response += L" "
& CdrGetUsr.cpp:97: + L"\n";
& CdrGetUsr.cpp:99: response += L" "
& CdrGetUsr.cpp:101: + L"\n";
& CdrGetUsr.cpp:103: response += L" "
& CdrGetUsr.cpp:105: + L"\n";
& CdrGetUsr.cpp:107: response += L" "
& CdrGetUsr.cpp:109: + L"\n";
& CdrGetUsr.cpp:121: response += L" " + grpRs.getString(1) + L"\n";
& CdrGetUsr.cpp:125: response += L" " + comment + L"\n";
& CdrGetUsr.cpp:128: return response + L" \n";
Modified all of these fields to convert entities. Should never be
necessary for phone numbers or group names but so many do need change
that it's not much extra change to do them all.
+ CdrGlossaryMap.cpp:59: response << L"";
+ CdrGlossaryMap.cpp:83: response << L"";
+ CdrGlossaryMap.cpp:84: response << L"" << cdr::entConvert(name) << L"";
+ CdrGlossaryMap.cpp:87: response << L"" << cdr::entConvert(*phrase)
+ CdrGlossaryMap.cpp:88: << L"";
+ CdrGlossaryMap.cpp:91: response << L"";
+ CdrGlossaryMap.cpp:96: response << L"";
+ CdrGlossaryMap.cpp:118: response << L"";
+ CdrGlossaryMap.cpp:142: response << L"";
+ CdrGlossaryMap.cpp:143: response << L"" << cdr::entConvert(name) << L"";
+ CdrGlossaryMap.cpp:146: response << L"" << cdr::entConvert(*phrase)
+ CdrGlossaryMap.cpp:147: << L"";
+ CdrGlossaryMap.cpp:150: response << L"";
+ CdrGlossaryMap.cpp:155: response << L"";
- CdrGlossaryMap.cpp:190: " AND s.value <> 'Rejected' "
- CdrGlossaryMap.cpp:191: " AND (e.value IS NULL OR e.value <> 'Yes') ";
+ CdrGlossaryMap.cpp:261: if (wcschr(L"'\".,?!:;()[]{}<>\x201C\x201D\x00A1\x00BF", p[i]))
This is the place referred to in lines 83 and 142. No '&' in the
normalization, so entConvert would still seem to be required.
- CdrLink.cpp:283: = static_cast (fldNode);
- CdrLink.cpp:661: cdr::String resp = L"\n"
- CdrLink.cpp:662: L" " + docIdStr + L"\n"
- CdrLink.cpp:663: L" \n"
- CdrLink.cpp:664: L" ";
- CdrLink.cpp:665: resp += errCount + L"\n";
- CdrLink.cpp:675: resp += L" \n"
- CdrLink.cpp:676: L"\n";
+ CdrLink.cpp:696: xml = L"";
+ CdrLink.cpp:759: xml += L"";
- CdrLink.cpp:886: std::wcout << "DocId=" << docObj->getId()
- CdrLink.cpp:887: << " DocTypeStr=" << docObj->getTextDocType()
- CdrLink.cpp:1180: return (L"<" + cmdName + L"Resp/>");
- CdrLink.cpp:1231: cdr::String resp = "\n";
- CdrLink.cpp:1232: resp += L" " + linkName + L"\n";
- CdrLink.cpp:1233: resp += L" " + linkName + L"\n";
& CdrLink.cpp:1235: resp += L" " + comment + L"\n";
Comment from database was not encoded.
+ CdrLink.cpp:1249: resp += L" \n";
+ CdrLink.cpp:1252: resp += L" \n";
+ CdrLink.cpp:1266: resp += L" " + xrs.getString(1) + L"\n";
& CdrLink.cpp:1278: resp += L" \n";
Fixed two failures to convert property and property comment in this section.
& CdrLink.cpp:1287: resp += L" \n";
Fixed two failures to convert property and property comment in this section.
+ CdrLink.cpp:1291: resp += L"";
+ CdrLink.cpp:1312: cdr::String resp = L"\n";
+ CdrLink.cpp:1319: resp += L"";
+ CdrLink.cpp:1339: cdr::String resp = L"\n";
+ CdrLink.cpp:1344: resp += L" /n";
& CdrLink.cpp:1350: resp += L" /n";
See fix on line 1349
+ CdrLink.cpp:1350: resp += L" /n";
+ CdrLink.cpp:1354: resp += L"";
- CdrLink.cpp:1612: = static_cast (node);
- CdrLink.cpp:2213: cdr::String response = L"";
- CdrLink.cpp:2220: response += L"";
- CdrLink.cpp:2222: swprintf(tmp, L"CDR%010ld"
+ CdrLink.cpp:2223: L"%.500s"
+ CdrLink.cpp:2224: L"",
+ CdrLink.cpp:2229: response += L"";
+ CdrLink.cpp:2231: response += L"";
+ CdrLink.cpp:2331: String rsp = L""
& CdrLink.cpp:2333: + L"";
Fixed return of a title.
- CdrLinkProcs.cpp:859: static_cast (this);
- CdrLinkProcs.cpp:901: static_cast (this);
- CdrLinkProcs.cpp:978: cdr::String response = L"";
- CdrLinkProcs.cpp:985: response += L"";
- CdrLinkProcs.cpp:987: swprintf(tmp, L"CDR%010ld"
+ CdrLinkProcs.cpp:988: L"%.500s"
+ CdrLinkProcs.cpp:989: L"",
+ CdrLinkProcs.cpp:994: response += L"";
+ CdrLinkProcs.cpp:996: response += L"";
+ CdrListGrps.cpp:34: response = L" \n";
+ CdrListGrps.cpp:35: response += L" " + r.getString(1) + L"\n";
+ CdrListGrps.cpp:38: return L" \n";
+ CdrListGrps.cpp:40: return response + L" \n";
+ CdrListUsrs.cpp:46: response = L" \n";
& CdrListUsrs.cpp:47: response += L" " + r.getString(1) + L"\n";
Unnecessary but did it anyway.
+ CdrListUsrs.cpp:50: return L" \n";
+ CdrListUsrs.cpp:52: return response + L" \n";
+ CdrLog.cpp:504: os << L"" << eventId
+ CdrLog.cpp:505: << L"";
+ CdrLogoff.cpp:46: return L" \n";
+ CdrLogon.cpp:108: cdr::String response = L" \n ";
+ CdrLogon.cpp:109: response += sessionId + L"\n \n";
+ CdrLogon.cpp:135: cdr::String response = L" \n";
+ CdrLogon.cpp:136: response += L" " + oldSessionName + L"\n";
+ CdrLogon.cpp:137: response += L" " + newSessionName + L"\n";
+ CdrLogon.cpp:138: response += L" \n";
Session identifiers use a restricted, safe, character set.
+ CdrMergeProt.cpp:196: os << L"<" << ppdName << L">";
- CdrMergeProt.cpp:198: os << L"";
+ CdrMergeProt.cpp:202: os << L"";
Safe because the content are controlled strings we defined
(for some values of "safe")
+ CdrMergeProt.cpp:205: os << L"";
+ CdrMergeProt.cpp:210: os << L"" << encoded.c_str()
+ CdrMergeProt.cpp:211: << L"";
+ CdrMergeProt.cpp:214: os << L"";
+ CdrMergeProt.cpp:216: os << L"" << ppdName << L">";
Controlled names again
? CdrMergeProt.cpp:357: os << L">";
See attrValue on line 354. Should it be converted?
Probably never needed but in theory could be. Have I misinterpreted
what's going on and broken something??
? CdrMergeProt.cpp:463: os << L"" << topElementName << L">";
Line 464 looks unsafe to me, but surely the CdrServer would have blown up
if it is. Maybe I'm too tired right now.
+ CdrMergeProt.cpp:469: return L"";
+ CdrMergeProt.cpp:587: cdr::String cmd = L""
+ CdrMergeProt.cpp:589: + L"NMerged with "
+ CdrMergeProt.cpp:591: + L".";
+ CdrMergeProt.cpp:602: size_t pos = rsp.find(L"");
- CdrMergeProt.cpp:628: cdr::String cmd = L""
- CdrMergeProt.cpp:630: + L"YCurrent"
- CdrMergeProt.cpp:631: L"";
- CdrMergeProt.cpp:642: if (rsp.find(L"") == rsp.npos)
- CdrMergeProt.cpp:678: + L"'>";
- CdrMergeProt.cpp:683: cdr::String cmd = L"YN"
- CdrMergeProt.cpp:684: L"Absorbed ScientificProtocolInfo document "
+ CdrMergeProt.cpp:686: + L".N"
? CdrMergeProt.cpp:688: + L"";
Looks to me like the safety of this depends on the nature of scientific
protocol info. Same issue as on 463 above.
- CdrModGrp.cpp:22:typedef std::list AuthList;
- CdrModGrp.cpp:166: return L" \n";
- CdrModUsr.cpp:144: return L" \n";
- CdrPublish.cpp:167: static_cast(doc);
- CdrPublish.cpp:324: return L"" + String::toString(jobId) +
- CdrPublish.cpp:325: L"";
- CdrReport.cpp:50:map cdr::Report::reportMap;
- CdrReport.cpp:135: return L""
- CdrReport.cpp:137: + L"";
- CdrReport.cpp:463: result << L"" << getName() << L"\n";
- CdrReport.cpp:473: result << L"\n"
- CdrReport.cpp:474: L"" << cdr::stringDocId(id) << L"\n"
- CdrReport.cpp:475: L"" << dtype << L"\n"
- CdrReport.cpp:476: L"" << name << L"\n"
- CdrReport.cpp:477: L"" << dt_out << L"\n"
- CdrReport.cpp:478: L"\n"
- CdrReport.cpp:479: L"" << aname << L"\n"
- CdrReport.cpp:480: L"" << dt << L"\n"
- CdrReport.cpp:481: L"\n"
- CdrReport.cpp:482: L"\n";
- CdrReport.cpp:485: result << L"]]>\n";
- CdrReport.cpp:515: result << L"" << getName() << L"\n";
- CdrReport.cpp:522: result << L"\n"
- CdrReport.cpp:523: L"" << cdr::stringDocId(id) << L"\n"
- CdrReport.cpp:524: L"" << dtype << L"\n"
- CdrReport.cpp:525: L"" << dt_out << L"\n"
- CdrReport.cpp:526: L"\n";
- CdrReport.cpp:529: result << L"]]>\n";
- CdrReport.cpp:569: result << L"" << getName() << L"\n";
- CdrReport.cpp:591: result << L"\n"
- CdrReport.cpp:592: L"" << cdr::stringDocId(currentId) << L"\n"
+ CdrReport.cpp:593: L"" << currentTitle << L"\n"
Fixed by Bob
& CdrReport.cpp:594: L"" << group << L"\n"
Fix is probably never required but not absolutely certain. And it doesn't hurt.
- CdrReport.cpp:595: L"\n";
- CdrReport.cpp:618: result << L"\n"
- CdrReport.cpp:619: L"" << cdr::stringDocId(currentId) << L"\n"
+ CdrReport.cpp:620: L"" << currentTitle << L"\n"
Fixed by Bob
& CdrReport.cpp:621: L"" << group << L"\n"
Fix is probably never required but not absolutely certain. And it doesn't hurt.
- CdrReport.cpp:622: L"\n";
- CdrReport.cpp:624: result << L"]]>\n";
- CdrReport.cpp:661: result << L"" << getName() << L"\n";
- CdrReport.cpp:667: result << L"\n"
- CdrReport.cpp:668: L"" << cdr::stringDocId(id) << L"\n"
+ CdrReport.cpp:669: L"" << title << L"\n"
Fixed by Bob
- CdrReport.cpp:670: L"\n";
- CdrReport.cpp:673: result << L"]]>\n";
- CdrReport.cpp:702: size_t endTag = report.find(L"", startTag);
- CdrReport.cpp:706: cdr::String result = L"";
- CdrReport.cpp:741: size_t endTag = report.find(L"", tagClose);
- CdrReport.cpp:746: cdr::String result = L"";
- CdrReport.cpp:768: result << L"" << getName() << L"\n";
- CdrReport.cpp:783: groupElem = L"Main";
- CdrReport.cpp:785: groupElem = L"Affiliate";
- CdrReport.cpp:787: result << L"";
- CdrReport.cpp:788: result << L""
- CdrReport.cpp:790: << L""
+ CdrReport.cpp:792: << L""
+ CdrReport.cpp:801: << L"'>"
+ CdrReport.cpp:803: << L"";
Left piName alone on the theory that no human will have a name with &<>
in it.
- CdrReport.cpp:807: result << L"";
- CdrReport.cpp:809: result << L"]]>\n";
- CdrReport.cpp:841: result << L"" << getName() << L"\n";
- CdrReport.cpp:862: result << L""
+ CdrReport.cpp:864: << L""
+ CdrReport.cpp:866: << L""
- CdrReport.cpp:868: << L"";
- CdrReport.cpp:871: result << L"]]>\n";
- CdrReport.cpp:927: result << L"" << getName() << L"\n";
- CdrReport.cpp:938: result << L"\n";
- CdrReport.cpp:960: result << L"]]>\n";
- CdrReport.cpp:993: result << L"" << getName() << L"\n";
- CdrReport.cpp:1010: result << L"]]>\n";
- CdrReport.cpp:1050: result << L"" << getName() << L"\n";
+ CdrReport.cpp:1057: result << L""
+ CdrReport.cpp:1058: << cdr::entConvert(value) << L"\n";
+ CdrReport.cpp:1060: result << L"\n";
- CdrReport.cpp:1065: result << L"]]>\n";
- CdrReport.cpp:1097: " WHERE t.name <> 'Citation' ";
- CdrReport.cpp:1116: result << L"" << getName() << L"\n";
- CdrReport.cpp:1140: result << L""
+ CdrReport.cpp:1142: << L""
+ CdrReport.cpp:1144: << L""
- CdrReport.cpp:1146: << L"";
- CdrReport.cpp:1150: result << L"]]>\n";
- CdrReport.cpp:1196: result << L"" << getName() << L"\n";
- CdrReport.cpp:1202: result << L""
- CdrReport.cpp:1204: << L"\n]]>\n";
- CdrReport.cpp:1228: result << L"" << getName() << L"\n";
- CdrReport.cpp:1233: result << L""
- CdrReport.cpp:1235: << L"\n]]>\n";
- CdrReport.cpp:1260: result << L"" << getName() << L"\n";
- CdrReport.cpp:1265: result << L""
- CdrReport.cpp:1267: << L"\n]]>\n";
- CdrReport.cpp:1295: result << L"" << getName() << L"\n";
- CdrReport.cpp:1302: << L"'>"
+ CdrReport.cpp:1304: << L"\n";
+ CdrReport.cpp:1306: result << L"]]>\n";
- CdrReport.cpp:1340: result << L"" << getName() << L"\n";
- CdrReport.cpp:1345: result << L""
+ CdrReport.cpp:1347: << L""
- CdrReport.cpp:1349: << L"\n";
- CdrReport.cpp:1351: result << L"]]>\n";
- CdrSearch.cpp:77: static_cast(child);
- CdrSearch.cpp:90: CdrSearchparse(static_cast(&qp));
- CdrSearch.cpp:117: cdr::String response = L" \n";
- CdrSearch.cpp:122: response += L" \n";
- CdrSearch.cpp:127: swprintf(tmp, L" \n CDR%010ld\n"
- CdrSearch.cpp:128: L" %s\n"
& CdrSearch.cpp:129: L" %.500s\n"
Changed above and below for new convention, entConvert on output only.
+ CdrSearch.cpp:130: L" \n",
+ CdrSearch.cpp:135: response += L" \n \n";
+ CdrSearch.cpp:137: response += L" \n \n";
- CdrSearch.cpp:195: str[j++] = static_cast(sql[i++]);
- CdrSearch.cpp:398: static_cast(node);
- CdrSearch.cpp:461: response = L"";
+ CdrSearch.cpp:462: response += L"" + r.getString(1) + L"";
+ CdrSearch.cpp:467: response = L"";
+ CdrSearch.cpp:469: response += L"";
+ CdrSearch.cpp:506: response = L"";
+ CdrSearch.cpp:507: response += L"" + path + L"";
+ CdrSearch.cpp:509: response += L"" + rule + L"";
+ CdrSearch.cpp:510: response += L"";
+ CdrSearch.cpp:515: response = L"";
+ CdrSearch.cpp:517: response += L"";
+ CdrSearch.cpp:612: return L"";
- CdrSearch.cpp:692: return L"";
- CdrServer.cpp:316: std::cout << "client IP address: " << threadArgs->clientAddress
- CdrServer.cpp:608: sprintf(blobTag, "", blobLen);
- CdrServer.cpp:653: cdr::String response = L"\n";
+ CdrServer.cpp:677: response += L"\n";
Returning XML constructed in lower level commands
& CdrServer.cpp:709: + L"'>\n \n "
All calls to sendErrorResponse except one send known safe error messages,
but the one that doesn't reports exception message, which could contain
anything. So I converted this line.
+ CdrServer.cpp:711: + L"\n \n\n";
- CdrServer.cpp:725: const cdr::dom::Element& cmdElement = static_cast
+ CdrServer.cpp:753: + L"'>\n \n "
+ CdrServer.cpp:754: + L"Unknown command: "
+ CdrServer.cpp:756: + L"\n \n"
+ CdrServer.cpp:757: + L" \n");
+ CdrServer.cpp:773: + L" \n "
+ CdrServer.cpp:775: + L"\n \n"
+ CdrServer.cpp:778: + L"Resp>\n \n");
+ CdrServer.cpp:797: + L" \n "
+ CdrServer.cpp:799: + L"\n \n"
+ CdrServer.cpp:802: + L"Resp>\n \n");
+ CdrServer.cpp:815: + L"Resp>"
+ CdrServer.cpp:818: + L""
+ CdrServer.cpp:820: + L"Resp>");
+ CdrServer.cpp:836: + L"Resp>"
+ CdrServer.cpp:837: + L"SAX Parse Exception: "
+ CdrServer.cpp:840: + L""
+ CdrServer.cpp:842: + L"Resp>");
+ CdrServer.cpp:852: + L"Resp>SAX Exception: "
+ CdrServer.cpp:854: + L""
+ CdrServer.cpp:856: + L"Resp>");
+ CdrServer.cpp:866: + L"Resp>Unexpected "
+ CdrServer.cpp:868: L""
+ CdrServer.cpp:870: + L"Resp>");
+ CdrServer.cpp:878: + L" \n";
+ CdrServer.cpp:891: + L"'>\n \n "
+ CdrServer.cpp:892: + L"Missing specific command element"
+ CdrServer.cpp:893: + L"\n \n"
+ CdrServer.cpp:894: + L" \n");
+ CdrServer.cpp:920: " AND name <> 'guest'"
& CdrServer.cpp
Looking through all of the CdrServer code I found several places where
exception messages are caught and put into responses. I change all of
them to perform an entity conversion. Everything else - command names,
timestamps, exception codes, fixed error type names and messages - I left
alone.
+ CdrSession.cpp:595: return cdr::String(L" " + result + L"");
- CdrShutdown.cpp:20: return L" \n";
+ CdrString.cpp:352: elem += L">" + data + L"" + tag + L">";
+ CdrString.cpp:363: cdr::String s = L" \n";
+? CdrString.cpp:366: s += L" " + *i++ + L"\n";
This one works for the vast majority of errors. Error messages including
text from the doc, like titles, could fail with this - unless the
conversion is already made - which it might be in at least one case. So
this could be wrong but isn't safe to modify without a huge amount of
analysis.
+ CdrString.cpp:367: s += L" \n";
+ CdrString.cpp:437: else if (c < 0 || c >= (int)getDecodingTableSize()) {
+ CdrString.cpp:555: p[1] = codes[(bits[i + 0] << 4 | bits[i + 1] >> 4) & 0x3F];
+ CdrString.cpp:561: p[1] = codes[(bits[i + 0] << 4 | bits[i + 1] >> 4) & 0x3F];
+ CdrString.cpp:562: p[2] = codes[(bits[i + 1] << 2 | bits[i + 2] >> 6) & 0x3F];
+ CdrSysValue.cpp:245: cdr::String resp = L"<" + tag + L">";
& CdrSysValue.cpp:247: resp += L"\n " + retValue + L"\n";
Returned value could contain anything.
+ CdrSysValue.cpp:248: resp += L"" + tag + L">\n";
- CdrTestClient.cpp:76: requests = "guest";
- CdrTestClient.cpp:77: requests += "CDR0000043753";
- CdrTestClient.cpp:78: requests += "";
- CdrTestClient.cpp:165: std::cout << "\n" << response << '\n';
Not writing to a client that can parse XML.
+ CdrValidateDoc.cpp:116: errStr += L">" + errMsg + L"\n";
& CdrValidateDoc.cpp:252: xml += L"" + *i++ + L"\n";
& CdrValidateDoc.cpp:270: xml += L"" + *i++ + L"\n";
The only two places we should convert errors, just before output.
+ CdrValidateDoc.cpp:275: xml = L"\n" + xml + L"\n";
+ CdrValidateDoc.cpp:315: static_cast(commandNode);
+ CdrValidateDoc.cpp:618: L" "
+ CdrValidateDoc.cpp:620: + L"\n "
+ CdrValidateDoc.cpp:622: + L"\n"
+ CdrValidateDoc.cpp:625: + L" \n";
+ CdrVersion.cpp:795: static_cast(c.getNodeType());
+ CdrVersion.cpp:807: ver_string << L"" << version << L"";
+ CdrVersion.cpp:809: return L"" + ver_string.str() + L"";
- CdrVersion.cpp:820: auto_ptr comment;
- CdrVersion.cpp:858: comment = auto_ptr(new cdr::String(false));
- CdrVersion.cpp:862: static_cast(c.getNodeType());
- CdrVersion.cpp:865: comment = auto_ptr(new cdr::String(c.getNodeValue()));
- CdrVersion.cpp:875: ver_string << L"" << version << L"";
- CdrVersion.cpp:877: ver_string << L"";
+ CdrVersion.cpp:879: return L"" + ver_string.str() + L"";
- CdrVersion.cpp:907: static_cast(c.getNodeType());
- CdrVersion.cpp:931: return L"";
- CdrVersion.cpp:994: return L"";
- CdrVersion.cpp:1063: return L"";
- CdrVersion.cpp:1114: return L"";
- CdrVersion.cpp:1164: response << L"";
- CdrVersion.cpp:1170: response << L""
- CdrVersion.cpp:1172: << L""
- CdrVersion.cpp:1174: << L"";
+ CdrVersion.cpp:1176: response << L""
+ CdrVersion.cpp:1178: << L"";
- CdrVersion.cpp:1179: response << L"";
- CdrVersion.cpp:1182: response << L"";
- CdrVersion.cpp:1218: response << L"\n";
- CdrVersion.cpp:1232: response << L" "
- CdrVersion.cpp:1234: << L"\n";
- CdrVersion.cpp:1249: response << L" "
- CdrVersion.cpp:1251: << L"\n";
- CdrVersion.cpp:1255: response << L" "
- CdrVersion.cpp:1257: << L"\n";
- CdrVersion.cpp:1260: response << L"\n";
- CdrXsd.cpp:506: L" \n"
- CdrXsd.cpp:507: L" \n"
- CdrXsd.cpp:508: L" \n"
- CdrXsd.cpp:509: L" \n"
- CdrXsd.cpp:510: L" \n\n"
- CdrXsd.cpp:511: L" \n"
- CdrXsd.cpp:512: L" \n"
- CdrXsd.cpp:513: L" \n\n";
- CdrXsd.cpp:518: << L"'>\n";
- CdrXsd.cpp:525: << L")'>\n"
- CdrXsd.cpp:526: L" \n"
- CdrXsd.cpp:529: << L"\"'/>\n"
- CdrXsd.cpp:530: L" \n"
- CdrXsd.cpp:531: L" \n";
- CdrXsd.cpp:533: os << L" \n"
- CdrXsd.cpp:534: L" \n\n";
- CdrXsd.cpp:536: os << L" \n"
- CdrXsd.cpp:537: L" \n"
- CdrXsd.cpp:538: L" \n"
- CdrXsd.cpp:539: L" \n"
- CdrXsd.cpp:540: L" \n"
- CdrXsd.cpp:541: L" \n"
- CdrXsd.cpp:542: L" \n"
- CdrXsd.cpp:543: L" \n"
- CdrXsd.cpp:544: L" \n"
- CdrXsd.cpp:545: L" \n"
- CdrXsd.cpp:546: L" \n"
- CdrXsd.cpp:547: L" \n"
- CdrXsd.cpp:548: L" \n"
- CdrXsd.cpp:549: L" \n\n"
- CdrXsd.cpp:550: L" \n"
- CdrXsd.cpp:551: L" \n"
- CdrXsd.cpp:552: L" \n"
- CdrXsd.cpp:557: L" \n"
- CdrXsd.cpp:558: L" \n"
- CdrXsd.cpp:561: L" \n"
- CdrXsd.cpp:567: L" \n"
- CdrXsd.cpp:568: L" \n"
- CdrXsd.cpp:569: L" \n"
- CdrXsd.cpp:570: L" \n"
- CdrXsd.cpp:574: L" \n"
- CdrXsd.cpp:575: L" \n"
- CdrXsd.cpp:576: L" \n\n"
- CdrXsd.cpp:577: L"\n";
- CdrXsd.cpp:627: const cdr::dom::Element& e = static_cast(n);
- CdrXsd.cpp:904: const cdr::dom::Element& e = static_cast(dn);
- CdrXsd.cpp:937: const cdr::dom::Element& e = static_cast(dn);
- CdrXsd.cpp:1050: const cdr::dom::Element& e = static_cast(dn);
- CdrXsd.cpp:1077: const cdr::dom::Element& e = static_cast(dn);
- CdrXsd.cpp:1563: (static_cast(n)).getAttribute(
- CdrXsd.cpp:2450: errCtl.setElementContext(static_cast(child));
- CdrXsd.cpp:2553: << (docOccs > 0 ? L"true" : L"false")
- CdrXsd.cpp:7070: << L"\n\n -->\n\n";
- CdrXsd.cpp:7098: os << L"(#PCDATA)>\n";
- CdrXsd.cpp:7114: os << L"EMPTY>\n";
- CdrXsd.cpp:7119: os << L"(#PCDATA)>\n";
- CdrXsd.cpp:7145: os << L")*>\n";
- CdrXsd.cpp:7181: os << L">\n";
- CdrXsd.cpp:7208: os << L" " << a->getName() << L" ";
- CdrXsd.cpp:7228: os << a->getDtdType();
- CdrXsd.cpp:7240: os << L">\n";
+ CdrXsd.cpp:7246: os << L"\n";
- CdrXsd.cpp:7247: os << L"\n";
- CdrXsd.cpp:7248: os << L"\n";
- CdrXsd.cpp:7249: os << L"\n";
- CdrXsd.cpp:7250: os << L"\n";
- CdrXsd.cpp:7251: os << L"\n";
- CdrXsd.cpp:7335: os << g->getContent();
+ CdrXsd.cpp:7447: writeDtdElement(const_cast(*e), os);
+ CdrXsd.cpp:7659: checkElementForAttribute(const_cast(*e), attrName, elemList,
Connect.cpp:45: rc = SQLConnect(hdbc, const_cast(dsn), SQL_NTS,
Connect.cpp:46: const_cast(uid), SQL_NTS,
Connect.cpp:47: const_cast(pwd), SQL_NTS);
FixDates.cpp:17:const wchar_t* TAG = L"";
ParseSchema.cpp:56: std::wcerr << L"DOM Exception: " << de->code << cdr::String(L": ")
ParseSchema.cpp:57: << cdr::String(de->msg)
ShutdownCdr.cpp:85: std::string cmd = "";
ShutdownCdr.cpp:87: + ""
ShutdownCdr.cpp:89: + ""
ShutdownCdr.cpp:90: ""
ShutdownCdr.cpp:91: "";
xmlpp.cpp:671: if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
xmlpp.cpp:975: if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
xmlpp.cpp:991: if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
xmlpp.cpp:1024: if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )