Hi all,

I have been seeing some really weird schema validation errors when parsing
simultaneously across several threads.  I have tracked the problem down to
what I believe is an error in GeneralAttributeCheck.  It appears as though
the GeneralAttributeCheck has a static instance (singleton) of its self that
it hands out to TraverseSchema.  This isn't a problem but the fact that
GeneralAttributeCheck contains an XMLBuffer instance that it uses for
various string manipulations is the issue.  In GeneralAttributeCheck.cpp
line 792, the XMLBuffer fBuffer member is used to store the attribute value.
The raw buffer is passed to validate() to perform validation.  If another
thread is performing attribute validation fBuffer is overwritten.  This
causes the validation to fail.

I just wanted to verify with the community that this is in fact a problem,
or is a usage issue?

Regards,
Jim

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

Reply via email to