dbertoni    00/04/20 09:30:21

  Modified:    c/src/XPath XResultTreeFrag.cpp XResultTreeFrag.hpp
                        XString.cpp XString.hpp
  Log:
  Fixed casting issues.
  
  Revision  Changes    Path
  1.3       +0 -8      xml-xalan/c/src/XPath/XResultTreeFrag.cpp
  
  Index: XResultTreeFrag.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XPath/XResultTreeFrag.cpp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- XResultTreeFrag.cpp       2000/04/11 14:46:23     1.2
  +++ XResultTreeFrag.cpp       2000/04/20 16:30:20     1.3
  @@ -83,11 +83,7 @@
        XObject(&envSupport),
        NodeRefListBase(),
        m_support(support),
  -#if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
  -     m_value(dynamic_cast<ResultTreeFragBase*>(val.clone(deepClone)))
  -#else
        m_value(val.clone(deepClone))
  -#endif
   {
   }
   
  @@ -99,11 +95,7 @@
        XObject(source),
        NodeRefListBase(source),
        m_support(source.m_support),
  -#if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
  -     
m_value(dynamic_cast<ResultTreeFragBase*>(source.m_value->clone(deepClone)))
  -#else
        m_value(source.m_value->clone(deepClone))
  -#endif
   {
   }
   
  
  
  
  1.4       +4 -0      xml-xalan/c/src/XPath/XResultTreeFrag.hpp
  
  Index: XResultTreeFrag.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XPath/XResultTreeFrag.hpp,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- XResultTreeFrag.hpp       2000/04/11 14:46:23     1.3
  +++ XResultTreeFrag.hpp       2000/04/20 16:30:20     1.4
  @@ -172,7 +172,11 @@
   
        XPathSupport&                                           m_support;
   
  +#if defined(XALAN_NO_NAMESPACES)
  +     auto_ptr<ResultTreeFragBase>            m_value;
  +#else
        std::auto_ptr<ResultTreeFragBase>       m_value;
  +#endif
   };
   
   
  
  
  
  1.3       +44 -18    xml-xalan/c/src/XPath/XString.cpp
  
  Index: XString.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XPath/XString.cpp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- XString.cpp       2000/04/11 14:46:23     1.2
  +++ XString.cpp       2000/04/20 16:30:20     1.3
  @@ -91,15 +91,9 @@
        XObject(source),
        m_support(source.m_support),
        m_value(source.m_value),
  -#if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
        m_resultTreeFrag(source.m_resultTreeFrag.get() == 0 ?
                                                0 :
  -                                             
dynamic_cast<ResultTreeFragBase*>(source.m_resultTreeFrag->clone(true)))
  -#else
  -     m_resultTreeFrag(source.m_resultTreeFrag.get() == 0 ?
  -                                             0 :
                                                
source.m_resultTreeFrag->clone(true))
  -#endif
   {
   }
   
  @@ -166,17 +160,33 @@
                        new ResultTreeFrag(*theFactory,
                                                           m_support);
   
  -#if defined(XALAN_OLD_AUTO_PTR)
  -             m_resultTreeFrag = std::auto_ptr<ResultTreeFragBase>(theFrag);
  -#else
  -         m_resultTreeFrag.reset(theFrag);
  -#endif
  -
                XalanNode* const        textNode =
                        theFactory->createTextNode(str());
                assert(textNode != 0);
   
                theFrag->appendChild(textNode);
  +
  +#if defined(XALAN_OLD_AUTO_PTR)
  +
  +#if !defined (XALAN_NO_NAMESPACES)
  +             using std::auto_ptr;
  +#endif
  +
  +#if defined(XALAN_NO_MUTABLE)
  +             ((XString*)this)->m_resultTreeFrag = 
auto_ptr<ResultTreeFragBase>(theFrag);
  +#else
  +             m_resultTreeFrag = auto_ptr<ResultTreeFragBase>(theFrag);
  +#endif
  +
  +#else
  +
  +#if defined(XALAN_NO_MUTABLE)
  +             ((XString*)this)->m_resultTreeFrag.reset(theFrag);
  +#else
  +             m_resultTreeFrag.reset(theFrag);
  +#endif
  +
  +#endif
        }
   
        return *m_resultTreeFrag.get();
  @@ -197,17 +207,33 @@
                        new ResultTreeFrag(*theFactory,
                                                           m_support);
   
  -#if defined(XALAN_OLD_AUTO_PTR)
  -             m_resultTreeFrag = std::auto_ptr<ResultTreeFragBase>(theFrag);
  -#else
  -         m_resultTreeFrag.reset(theFrag);
  -#endif
  -
                XalanNode* const        textNode =
                        theFactory->createTextNode(str());
                assert(textNode != 0);
   
                theFrag->appendChild(textNode);
  +
  +#if defined(XALAN_OLD_AUTO_PTR)
  +
  +#if !defined (XALAN_NO_NAMESPACES)
  +             using std::auto_ptr;
  +#endif
  +
  +#if defined(XALAN_NO_MUTABLE)
  +             ((XString*)this)->m_resultTreeFrag = 
auto_ptr<ResultTreeFragBase>(theFrag);
  +#else
  +             m_resultTreeFrag = auto_ptr<ResultTreeFragBase>(theFrag);
  +#endif
  +
  +#else
  +
  +#if defined(XALAN_NO_MUTABLE)
  +             ((XString*)this)->m_resultTreeFrag.reset(theFrag);
  +#else
  +             m_resultTreeFrag.reset(theFrag);
  +#endif
  +
  +#endif
        }
   
        return *m_resultTreeFrag.get();
  
  
  
  1.4       +12 -0     xml-xalan/c/src/XPath/XString.hpp
  
  Index: XString.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XPath/XString.hpp,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- XString.hpp       2000/04/11 14:46:24     1.3
  +++ XString.hpp       2000/04/20 16:30:20     1.4
  @@ -152,7 +152,19 @@
   
        const XalanDOMString                                            m_value;
   
  +#if defined(XALAN_NO_NAMESPACES)
  +#if defined(XALAN_NO_MUTABLE)
  +     auto_ptr<ResultTreeFragBase>                            
m_resultTreeFrag;
  +#else
  +     mutable auto_ptr<ResultTreeFragBase>            m_resultTreeFrag;
  +#endif
  +#else
  +#if defined(XALAN_NO_MUTABLE)
  +     std::auto_ptr<ResultTreeFragBase>                       
m_resultTreeFrag;
  +#else
        mutable std::auto_ptr<ResultTreeFragBase>       m_resultTreeFrag;
  +#endif
  +#endif
   };
   
   
  
  
  

Reply via email to