Message:

   The following issue has been re-assigned.

   Assignee: Neil Graham (mailto:[EMAIL PROTECTED])
---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/XERCESC-1216

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: XERCESC-1216
    Summary: GrammarResolver never clears internal cache of Grammar instances
       Type: Bug

     Status: Open
   Priority: Blocker

    Project: Xerces-C++
 Components: 
             Validating Parser (Schema) (Xerces 1.5 or up only)

   Assignee: Neil Graham
   Reporter: David Bertoni

    Created: Wed, 19 May 2004 12:17 PM
    Updated: Fri, 21 May 2004 6:39 AM
Environment: All platforms

Description:
I may be misunderstanding how this should work, but 
GrammarResolver::resetCachedGrammar() clears the associated XMLGrammarPool instance, 
but does not clears its own cache of pooled grammars, stored in the member variable 
fGrammarFromPool.  The result is a dangling pointer to a Grammar instance that no 
longer exists.  I've applied the following patch to my local copy of Xerces-C, which 
seems to clear up the problem.

cvs diff GrammarResolver.cpp (in directory 
V:\xml-xerces\c\src\xercesc\validators\common\)
Index: GrammarResolver.cpp
===================================================================
RCS file: 
/home/cvspublic/xml-xerces/c/src/xercesc/validators/common/GrammarResolver.cpp,v
retrieving revision 1.25
diff -r1.25 GrammarResolver.cpp
403a404
>     fGrammarFromPool->removeAll();




---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


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

Reply via email to