knoaman     2002/11/28 12:08:26

  Modified:    c/src/xercesc/framework XMLElementDecl.cpp
  Log:
  Use existing QName instead of creating a new one everytime.
  
  Revision  Changes    Path
  1.4       +13 -7     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.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- XMLElementDecl.cpp        4 Nov 2002 15:00:21 -0000       1.3
  +++ XMLElementDecl.cpp        28 Nov 2002 20:08:26 -0000      1.4
  @@ -97,23 +97,29 @@
                               , const XMLCh* const        localPart
                               , const int                 uriId )
   {
  -   delete fElementName;
  -   fElementName = new QName(prefix, localPart, uriId);
  +    if (fElementName)
  +        fElementName->setName(prefix, localPart, uriId);
  +    else
  +        fElementName = new QName(prefix, localPart, uriId);
   }
   
   void
   XMLElementDecl::setElementName(const XMLCh* const       rawName
                               , const int                 uriId )
   {
  -   delete fElementName;
  -   fElementName = new QName(rawName, uriId);
  +    if (fElementName)
  +        fElementName->setName(rawName, uriId);
  +    else
  +        fElementName = new QName(rawName, uriId);
   }
   
   void
   XMLElementDecl::setElementName(const QName* const    elementName)
   {
  -   delete fElementName;
  -   fElementName = new QName(*elementName);
  +    if (fElementName)
  +        fElementName->setValues(*elementName);
  +    else
  +        fElementName = new QName(*elementName);
   }
   
   // ---------------------------------------------------------------------------
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to