You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by tn...@apache.org on 2002/09/27 21:18:41 UTC

cvs commit: xml-xerces/c/src/xercesc/dom/impl DOMDocumentImpl.cpp DOMEntityImpl.cpp DOMNotationImpl.cpp

tng         2002/09/27 12:18:40

  Modified:    c/src/xercesc/dom/impl DOMDocumentImpl.cpp DOMEntityImpl.cpp
                        DOMNotationImpl.cpp
  Log:
  DOM L3 fix: check null string first before assigning baseURI
  
  Revision  Changes    Path
  1.26      +8 -4      xml-xerces/c/src/xercesc/dom/impl/DOMDocumentImpl.cpp
  
  Index: DOMDocumentImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/impl/DOMDocumentImpl.cpp,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- DOMDocumentImpl.cpp	26 Sep 2002 17:26:04 -0000	1.25
  +++ DOMDocumentImpl.cpp	27 Sep 2002 19:18:40 -0000	1.26
  @@ -903,9 +903,13 @@
   }
   
   void DOMDocumentImpl::setDocumentURI(const XMLCh* documentURI){
  -    XMLCh* temp = (XMLCh*) this->allocate((XMLString::stringLen(documentURI) + 9)*sizeof(XMLCh));
  -    XMLString::fixURI(documentURI, temp);
  -    fDocumentURI = temp;
  +    if (documentURI && *documentURI) {
  +        XMLCh* temp = (XMLCh*) this->allocate((XMLString::stringLen(documentURI) + 9)*sizeof(XMLCh));
  +        XMLString::fixURI(documentURI, temp);
  +        fDocumentURI = temp;
  +    }
  +    else
  +        fDocumentURI = 0;
   }
   
   bool DOMDocumentImpl::getStrictErrorChecking() const {
  
  
  
  1.14      +8 -4      xml-xerces/c/src/xercesc/dom/impl/DOMEntityImpl.cpp
  
  Index: DOMEntityImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/impl/DOMEntityImpl.cpp,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- DOMEntityImpl.cpp	26 Sep 2002 17:26:04 -0000	1.13
  +++ DOMEntityImpl.cpp	27 Sep 2002 19:18:40 -0000	1.14
  @@ -176,9 +176,13 @@
   
   
   void DOMEntityImpl::setBaseURI(const XMLCh* baseURI) {
  -    XMLCh* temp = (XMLCh*) ((DOMDocumentImpl *)getOwnerDocument())->allocate((XMLString::stringLen(baseURI) + 9)*sizeof(XMLCh));
  -    XMLString::fixURI(baseURI, temp);
  -    fBaseURI = temp;
  +    if (baseURI && *baseURI) {
  +        XMLCh* temp = (XMLCh*) ((DOMDocumentImpl *)getOwnerDocument())->allocate((XMLString::stringLen(baseURI) + 9)*sizeof(XMLCh));
  +        XMLString::fixURI(baseURI, temp);
  +        fBaseURI = temp;
  +    }
  +    else
  +        fBaseURI = 0;
   }
   
   
  
  
  
  1.11      +8 -4      xml-xerces/c/src/xercesc/dom/impl/DOMNotationImpl.cpp
  
  Index: DOMNotationImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/impl/DOMNotationImpl.cpp,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- DOMNotationImpl.cpp	26 Sep 2002 17:26:04 -0000	1.10
  +++ DOMNotationImpl.cpp	27 Sep 2002 19:18:40 -0000	1.11
  @@ -161,9 +161,13 @@
   }
   
   void DOMNotationImpl::setBaseURI(const XMLCh* baseURI) {
  -    XMLCh* temp = (XMLCh*) ((DOMDocumentImpl *)getOwnerDocument())->allocate((XMLString::stringLen(baseURI) + 9)*sizeof(XMLCh));
  -    XMLString::fixURI(baseURI, temp);
  -    fBaseURI = temp;
  +    if (baseURI && *baseURI) {
  +        XMLCh* temp = (XMLCh*) ((DOMDocumentImpl *)getOwnerDocument())->allocate((XMLString::stringLen(baseURI) + 9)*sizeof(XMLCh));
  +        XMLString::fixURI(baseURI, temp);
  +        fBaseURI = temp;
  +    }
  +    else
  +        fBaseURI = 0;
   }
   
   const XMLCh* DOMNotationImpl::getBaseURI() const
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org