You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by Stan <sy...@oblix.com> on 2001/05/05 02:07:52 UTC
Re: Running threadsafe example on Win32 VC++ 6.0
Hi,
Has anyone else gotten problems running the threadsafe example from the
Xalan C++ 1.1 release
on VC++ 6.0 in the debug build ? I am concerned that separating the processing
of the stylesheet into
the StylesheetRoot object and the processor process () call are not thread
safe. This is the assert that
I am getting which is similar to the assert that I get in my own
implementation. This problem does not
happen if the processor's process call is locked.
Thanks,
-Stan
_NMSG_WRITE(int 0x0000000a) line 221
abort() line 44 + 7 bytes
_assert(void * 0x002f0398, void * 0x002f0340, unsigned int 0x0000006a) line 267
XalanReferenceCountedObject::removeReference(XalanReferenceCountedObject *
0x004d8630 theFalseBoolean) line 106 + 29 bytes
XObjectPtr::~XObjectPtr() line 417 + 14 bytes
ElemChoose::execute(StylesheetExecutionContext & {...}, XalanNode * 0x00bb20b0,
XalanNode * 0x00ef8cec, const QName & {...}) line 163 + 18 bytes
ElemTemplateElement::executeChildren(StylesheetExecutionContext & {...},
XalanNode * 0x00bb20b0, XalanNode * 0x00ef8cec, const QName & {...}) line 289 +
32 bytes
ElemTemplateElement::transformChild(StylesheetExecutionContext & {...}, const
Stylesheet & {...}, const ElemTemplateElement * 0x00ba8840, const
ElemTemplateElement * 0x00bab2b0, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8c68, XalanNode * 0x00ef8cec, const QName & {...}, int 0x00000032) line
988
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8c68, const QName & {...}, int 0x00000032, const NodeRefListBase & {...},
unsigned int 0x0000001b) line 869
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8c68, const QName & {...}, int 0x00000032, int 0x0000000d, const
std::vector<NodeSortKey,std::allocator<NodeSortKey> > & {...}, ...) line 780
ElemTemplateElement::transformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8c68, const QName & {...}, const XPath * 0x00ba83b0, int 0x00000032, int
0x0000000d) line 686
ElemApplyTemplates::execute(StylesheetExecutionContext & {...}, XalanNode *
0x00bb20b0, XalanNode * 0x00ef8c68, const QName & {...}) line 176
ElemTemplateElement::executeChildren(StylesheetExecutionContext & {...},
XalanNode * 0x00bb20b0, XalanNode * 0x00ef8c68, const QName & {...}) line 289 +
32 bytes
ElemTemplateElement::transformChild(StylesheetExecutionContext & {...}, const
Stylesheet & {...}, const ElemTemplateElement * 0x00ba5cc0, const
ElemTemplateElement * 0x00ba6220, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8504, XalanNode * 0x00ef8c68, const QName & {...}, int 0x00000032) line
988
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8504, const QName & {...}, int 0x00000032, const NodeRefListBase & {...},
unsigned int 0x00000003) line 869
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8504, const QName & {...}, int 0x00000032, int 0x0000000a, const
std::vector<NodeSortKey,std::allocator<NodeSortKey> > & {...}, ...) line 780
ElemTemplateElement::transformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8504, const QName & {...}, const XPath * 0x00ba5270, int 0x00000032, int
0x0000000a) line 686
ElemApplyTemplates::execute(StylesheetExecutionContext & {...}, XalanNode *
0x00bb20b0, XalanNode * 0x00ef8504, const QName & {...}) line 176
ElemTemplateElement::executeChildren(StylesheetExecutionContext & {...},
XalanNode * 0x00bb20b0, XalanNode * 0x00ef8504, const QName & {...}) line 289 +
32 bytes
ElemTemplateElement::transformChild(StylesheetExecutionContext & {...}, const
Stylesheet & {...}, const ElemTemplateElement * 0x00ba20c0, const
ElemTemplateElement * 0x00ba33c0, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8060, XalanNode * 0x00ef8504, const QName & {...}, int 0x00000032) line
988
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8060, const QName & {...}, int 0x00000032, const NodeRefListBase & {...},
unsigned int 0x00000005) line 869
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8060, const QName & {...}, int 0x00000032, int 0x00000007, const
std::vector<NodeSortKey,std::allocator<NodeSortKey> > & {...}, ...) line 780
ElemTemplateElement::transformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00ef8060, const QName & {...}, const XPath * 0x00ba3c30, int 0x00000032, int
0x00000007) line 686
ElemApplyTemplates::execute(StylesheetExecutionContext & {...}, XalanNode *
0x00bb20b0, XalanNode * 0x00ef8060, const QName & {...}) line 176
ElemTemplateElement::executeChildren(StylesheetExecutionContext & {...},
XalanNode * 0x00bb20b0, XalanNode * 0x00ef8060, const QName & {...}) line 289 +
32 bytes
ElemLiteralResult::execute(StylesheetExecutionContext & {...}, XalanNode *
0x00bb20b0, XalanNode * 0x00ef8060, const QName & {...}) line 251
ElemTemplateElement::executeChildren(StylesheetExecutionContext & {...},
XalanNode * 0x00bb20b0, XalanNode * 0x00ef8060, const QName & {...}) line 289 +
32 bytes
ElemTemplateElement::transformChild(StylesheetExecutionContext & {...}, const
Stylesheet & {...}, const ElemTemplateElement * 0x00b9f930, const
ElemTemplateElement * 0x00ba1790, XalanNode * 0x00bb20b0, XalanNode *
0x00bb20b0, XalanNode * 0x00ef8060, const QName & {...}, int 0x00000032) line
988
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00bb20b0, const QName & {...}, int 0x00000032, const NodeRefListBase & {...},
unsigned int 0x00000001) line 869
ElemTemplateElement::doTransformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00bb20b0, const QName & {...}, int 0x00000032, int 0x00000003, const
std::vector<NodeSortKey,std::allocator<NodeSortKey> > & {...}, ...) line 780
ElemTemplateElement::transformSelectedChildren(StylesheetExecutionContext &
{...}, const Stylesheet & {...}, const ElemTemplateElement & {...}, const
ElemTemplateElement * 0x00000000, XalanNode * 0x00bb20b0, XalanNode *
0x00bb20b0, const QName & {...}, const XPath * 0x00b9f4a0, int 0x00000032, int
0x00000003) line 686
ElemApplyTemplates::execute(StylesheetExecutionContext & {...}, XalanNode *
0x00bb20b0, XalanNode * 0x00bb20b0, const QName & {...}) line 190
ElemTemplateElement::executeChildren(StylesheetExecutionContext & {...},
XalanNode * 0x00bb20b0, XalanNode * 0x00bb20b0, const QName & {...}) line 289 +
32 bytes
ElemTemplate::execute(StylesheetExecutionContext & {...}, XalanNode *
0x00bb20b0, XalanNode * 0x00bb20b0, const QName & {...}) line 171
StylesheetRoot::process(XalanNode * 0x00bb20b0, XSLTResultTarget & {...},
StylesheetExecutionContext & {...}) line 229 + 78 bytes
XSLTEngineImpl::process(const XSLTInputSource & {...}, XSLTResultTarget &
{...}, StylesheetExecutionContext & {...}) line 445
theThread(void * 0x00000003) line 122 + 35 bytes
KERNEL32! 77f04ede()