Uploaded image for project: 'Xerces-C++'
  1. Xerces-C++
  2. XERCESC-1234

XSTypeDefinition::derivedFromType hangs, "anyType" is its own base type

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.5.0
    • Fix Version/s: 2.6.0
    • Labels:
      None
    • Environment:
      Windows Visual C++ 6.0-

      Description

      I'm using Xerces-C++ 2.5.0 in a MS Visual C++ 6.0 project on a Windows 2000 box. I use XercesDOMParser::loadGrammar to preparse my schema, then I use XMLGrammarPool::getXSModel to get the model and iterate through the XSTypeDefinition objects to check for types derived from certain key base types. My problem is that my base types are derived from "anyType" which has a pointer to itself as its base type member. Thus the loop in XSComplexTypeDefinition::derivedFromType:

      while (type && (type != ancestorType))

      { type = type->getBaseType(); }

      gets stuck as soon as it gets to the "anyType" ancestor and loops forever whenever the type being checked is NOT derived from the given ancestorType.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              davebehnke David J. Behnke
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: