tng 2002/10/30 13:52:01
Modified: c/src/xercesc/framework XMLElementDecl.cpp
c/src/xercesc/util QName.cpp QName.hpp
c/src/xercesc/validators/common ContentSpecNode.cpp
ContentSpecNode.hpp SimpleContentModel.hpp
c/src/xercesc/validators/schema TraverseSchema.cpp
c/src/xercesc/validators/schema/identity XercesXPath.cpp
Log:
[Bug 13641] compiler-generated copy-constructor for QName doesn't do the right thing.
Revision Changes Path
1.2 +2 -2 xml-xerces/c/src/xercesc/framework/XMLElementDecl.cpp
Index: XMLElementDecl.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/framework/XMLElementDecl.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- XMLElementDecl.cpp 1 Feb 2002 22:21:51 -0000 1.1
+++ XMLElementDecl.cpp 30 Oct 2002 21:52:00 -0000 1.2
@@ -111,7 +111,7 @@
XMLElementDecl::setElementName(const QName* const elementName)
{
delete fElementName;
- fElementName = new QName(elementName);
+ fElementName = new QName(*elementName);
}
// ---------------------------------------------------------------------------
1.5 +9 -6 xml-xerces/c/src/xercesc/util/QName.cpp
Index: QName.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/QName.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- QName.cpp 24 Sep 2002 19:51:24 -0000 1.4
+++ QName.cpp 30 Oct 2002 21:52:00 -0000 1.5
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.5 2002/10/30 21:52:00 tng
+ * [Bug 13641] compiler-generated copy-constructor for QName doesn't do the right
thing.
+ *
* Revision 1.4 2002/09/24 19:51:24 tng
* Performance: use XMLString::equals instead of XMLString::compareString
*
@@ -175,7 +178,7 @@
// ---------------------------------------------------------------------------
// QName: Copy Constructors
// ---------------------------------------------------------------------------
-QName::QName(const QName* const qname) :
+QName::QName(const QName& qname) :
fPrefix(0)
, fPrefixBufSz(0)
, fLocalPart(0)
@@ -186,17 +189,17 @@
{
unsigned int newLen;
- newLen = XMLString::stringLen(qname->getLocalPart());
+ newLen = XMLString::stringLen(qname.getLocalPart());
fLocalPartBufSz = newLen + 8;
fLocalPart = new XMLCh[fLocalPartBufSz + 1];
- XMLString::moveChars(fLocalPart, qname->getLocalPart(), newLen + 1);
+ XMLString::moveChars(fLocalPart, qname.getLocalPart(), newLen + 1);
- newLen = XMLString::stringLen(qname->getPrefix());
+ newLen = XMLString::stringLen(qname.getPrefix());
fPrefixBufSz = newLen + 8;
fPrefix = new XMLCh[fPrefixBufSz + 1];
- XMLString::moveChars(fPrefix, qname->getPrefix(), newLen + 1);
+ XMLString::moveChars(fPrefix, qname.getPrefix(), newLen + 1);
- fURIId = qname->getURI();
+ fURIId = qname.getURI();
}
// ---------------------------------------------------------------------------
1.4 +4 -1 xml-xerces/c/src/xercesc/util/QName.hpp
Index: QName.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/QName.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- QName.hpp 5 Sep 2002 16:06:41 -0000 1.3
+++ QName.hpp 30 Oct 2002 21:52:00 -0000 1.4
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.4 2002/10/30 21:52:00 tng
+ * [Bug 13641] compiler-generated copy-constructor for QName doesn't do the right
thing.
+ *
* Revision 1.3 2002/09/05 16:06:41 tng
* [Bug 12232] Make operator to be constant.
*
@@ -124,7 +127,7 @@
);
/** Copy constructor. */
- QName(const QName* const qname);
+ QName(const QName& qname);
~QName();
1.4 +2 -2 xml-xerces/c/src/xercesc/validators/common/ContentSpecNode.cpp
Index: ContentSpecNode.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/common/ContentSpecNode.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ContentSpecNode.cpp 21 Mar 2002 15:41:48 -0000 1.3
+++ ContentSpecNode.cpp 30 Oct 2002 21:52:00 -0000 1.4
@@ -83,7 +83,7 @@
{
const QName* tempElement = toCopy.getElement();
if (tempElement)
- fElement = new QName(tempElement);
+ fElement = new QName(*tempElement);
else
fElement = 0;
1.4 +6 -3 xml-xerces/c/src/xercesc/validators/common/ContentSpecNode.hpp
Index: ContentSpecNode.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/common/ContentSpecNode.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ContentSpecNode.hpp 4 Apr 2002 14:42:41 -0000 1.3
+++ ContentSpecNode.hpp 30 Oct 2002 21:52:00 -0000 1.4
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.4 2002/10/30 21:52:00 tng
+ * [Bug 13641] compiler-generated copy-constructor for QName doesn't do the right
thing.
+ *
* Revision 1.3 2002/04/04 14:42:41 knoaman
* Change min/maxOccurs from unsigned int to int.
*
@@ -327,7 +330,7 @@
, fMaxOccurs(1)
{
if (element)
- fElement = new QName(element);
+ fElement = new QName(*element);
}
inline
@@ -346,7 +349,7 @@
if (copyQName)
{
if (element)
- fElement = new QName(element);
+ fElement = new QName(*element);
}
else
{
@@ -468,7 +471,7 @@
delete fElement;
fElement = 0;
if (element)
- fElement = new QName(element);
+ fElement = new QName(*element);
}
inline void ContentSpecNode::setFirst(ContentSpecNode* const toAdopt)
1.2 +5 -2
xml-xerces/c/src/xercesc/validators/common/SimpleContentModel.hpp
Index: SimpleContentModel.hpp
===================================================================
RCS file:
/home/cvs/xml-xerces/c/src/xercesc/validators/common/SimpleContentModel.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- SimpleContentModel.hpp 1 Feb 2002 22:22:39 -0000 1.1
+++ SimpleContentModel.hpp 30 Oct 2002 21:52:00 -0000 1.2
@@ -56,8 +56,11 @@
/*
* $Log$
- * Revision 1.1 2002/02/01 22:22:39 peiyongz
- * Initial revision
+ * Revision 1.2 2002/10/30 21:52:00 tng
+ * [Bug 13641] compiler-generated copy-constructor for QName doesn't do the right
thing.
+ *
+ * Revision 1.1.1.1 2002/02/01 22:22:39 peiyongz
+ * sane_include
*
* Revision 1.12 2001/11/21 14:30:13 knoaman
* Fix for UPA checking.
@@ -241,12 +244,12 @@
, fDTD(dtd)
{
if (firstChild)
- fFirstChild = new QName(firstChild);
+ fFirstChild = new QName(*firstChild);
else
fFirstChild = new QName(XMLUni::fgZeroLenString, XMLUni::fgZeroLenString,
XMLElementDecl::fgInvalidElemId);
if (secondChild)
- fSecondChild = new QName(secondChild);
+ fSecondChild = new QName(*secondChild);
else
fSecondChild = new QName(XMLUni::fgZeroLenString, XMLUni::fgZeroLenString,
XMLElementDecl::fgInvalidElemId);
}
1.30 +2 -2 xml-xerces/c/src/xercesc/validators/schema/TraverseSchema.cpp
Index: TraverseSchema.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/schema/TraverseSchema.cpp,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- TraverseSchema.cpp 16 Oct 2002 15:10:27 -0000 1.29
+++ TraverseSchema.cpp 30 Oct 2002 21:52:00 -0000 1.30
@@ -2607,7 +2607,7 @@
}
}
- return new QName(elemDecl->getElementName());
+ return new QName(*elemDecl->getElementName());
}
const XMLCh* TraverseSchema::traverseNotationDecl(const DOMElement* const elem) {
1.2 +5 -2
xml-xerces/c/src/xercesc/validators/schema/identity/XercesXPath.cpp
Index: XercesXPath.cpp
===================================================================
RCS file:
/home/cvs/xml-xerces/c/src/xercesc/validators/schema/identity/XercesXPath.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- XercesXPath.cpp 1 Feb 2002 22:22:51 -0000 1.1
+++ XercesXPath.cpp 30 Oct 2002 21:52:01 -0000 1.2
@@ -56,8 +56,11 @@
/*
* $Log$
- * Revision 1.1 2002/02/01 22:22:51 peiyongz
- * Initial revision
+ * Revision 1.2 2002/10/30 21:52:01 tng
+ * [Bug 13641] compiler-generated copy-constructor for QName doesn't do the right
thing.
+ *
+ * Revision 1.1.1.1 2002/02/01 22:22:51 peiyongz
+ * sane_include
*
* Revision 1.3 2001/11/15 17:10:19 knoaman
* Particle derivation checking support.
@@ -111,7 +114,7 @@
XercesNodeTest::XercesNodeTest(const QName* const qName)
: fType(QNAME)
- , fName(new QName(qName))
+ , fName(new QName(*qName))
{
}
@@ -126,7 +129,7 @@
XercesNodeTest::XercesNodeTest(const XercesNodeTest& other)
: fType(other.fType)
- , fName(new QName(other.fName))
+ , fName(new QName(*other.fName))
{
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]