dbertoni    01/11/16 11:34:22

  Modified:    c/src/XPath XPathProcessorImpl.cpp
  Log:
  Check to see that a prefix has been bound to a valid namespace URI.
  
  Revision  Changes    Path
  1.45      +16 -14    xml-xalan/c/src/XPath/XPathProcessorImpl.cpp
  
  Index: XPathProcessorImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XPath/XPathProcessorImpl.cpp,v
  retrieving revision 1.44
  retrieving revision 1.45
  diff -u -r1.44 -r1.45
  --- XPathProcessorImpl.cpp    2001/07/12 04:35:49     1.44
  +++ XPathProcessorImpl.cpp    2001/11/16 19:34:22     1.45
  @@ -603,32 +603,34 @@
   
        const XalanDOMString                    prefix =
                                substring(pat, startSubstring, posOfNSSep);
  +     assert(length(prefix) != 0);
   
        const XalanDOMString* const             uName =
                                m_prefixResolver->getNamespaceForPrefix(prefix);
   
  -     if(uName != 0 && length(*uName) > 0)
  +     if(uName == 0)
        {
  -             addToTokenQueue(*uName);
  -
  -             addToTokenQueue(DOMServices::s_XMLNamespaceSeparatorString);
  -
  -             const XalanDOMString    s = substring(pat, posOfNSSep + 1, 
posOfScan);
  -       
  -             if(length(s) > 0)
  -             {
  -                     addToTokenQueue(s);
  -             }
  +             error(
  +                     TranscodeFromLocalCodePage("Unable to resolve prefix 
'") +
  +                     prefix +
  +                     TranscodeFromLocalCodePage("'."));
        }
  +     else if (length(*uName) == 0)
  +     {
  +             error(
  +                     TranscodeFromLocalCodePage("The prefix '") +
  +                     prefix +
  +                     TranscodeFromLocalCodePage("' is bound to a zero-length 
URI."));
  +     }
        else
        {
  -             addToTokenQueue(prefix);
  +             addToTokenQueue(*uName);
   
                addToTokenQueue(DOMServices::s_XMLNamespaceSeparatorString);
   
                const XalanDOMString    s = substring(pat, posOfNSSep + 1, 
posOfScan);
  -
  -             if(s.length() > 0)
  +       
  +             if(length(s) > 0)
                {
                        addToTokenQueue(s);
                }
  
  
  

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

Reply via email to