Author: jasons Date: Mon Nov 10 10:13:32 2003 New Revision: 114 Modified: xml/xerces-p/trunk/postModule.pl Log: can no longer benefit from cached CallbackHandler object, some bug is calling the wrong pointer value for set_callback_obj(), so we must create a new one each time
Modified: xml/xerces-p/trunk/postModule.pl ============================================================================== --- xml/xerces-p/trunk/postModule.pl (original) +++ xml/xerces-p/trunk/postModule.pl Mon Nov 10 10:13:32 2003 @@ -309,7 +309,8 @@ my (\$self,\$handler) = [EMAIL PROTECTED]; my \$retval; my \$callback = \$XML::Xerces::$ {class}::OWNER{\$self}->{__ERROR_HANDLER}; - if (defined \$callback) { +# if (defined \$callback) { + if (0) { \$retval = \$callback->set_callback_obj(\$handler); } else { \$callback = XML::Xerces::PerlErrorCallbackHandler->new(\$handler); @@ -331,7 +332,8 @@ sub setEntityResolver { my (\$self,\$handler) = [EMAIL PROTECTED]; my \$callback = \$XML::Xerces::$ {class}::OWNER{\$self}->{__ENTITY_RESOLVER}; - if (defined \$callback) { +# if (defined \$callback) { + if (0) { \$callback->set_callback_obj(\$handler); } else { \$callback = XML::Xerces::PerlEntityResolverHandler->new(\$handler); @@ -349,7 +351,8 @@ sub setDocumentHandler { my ($self,$handler) = @_; my $callback = $XML::Xerces::SAXParser::OWNER{$self}->{__DOCUMENT_HANDLER}; - if (defined $callback) { +# if (defined \$callback) { + if (0) { $callback->set_callback_obj($handler); } else { $callback = XML::Xerces::PerlDocumentCallbackHandler->new($handler); @@ -369,7 +372,8 @@ sub setContentHandler { my ($self,$handler) = @_; my $callback = $XML::Xerces::SAX2XMLReader::OWNER{$self}->{__CONTENT_HANDLER}; - if (defined $callback) { +# if (defined \$callback) { + if (0) { $callback->set_callback_obj($handler); } else { $callback = XML::Xerces::PerlContentCallbackHandler->new($handler); @@ -388,7 +392,8 @@ sub createTreeWalker { my ($self,$root,$what,$filter,$expand) = @_; my $callback = $XML::Xerces::DOMTreeWalker::OWNER{$self}->{__NODE_FILTER}; - if (defined $callback) { +# if (defined \$callback) { + if (0) { $callback->set_callback_obj($filter); } else { $callback = XML::Xerces::PerlNodeFilterCallbackHandler->new($filter); @@ -411,7 +416,8 @@ sub createNodeIterator { my ($self,$root,$what,$filter,$expand) = @_; my $callback = $XML::Xerces::DOMNodeIterator::OWNER{$self}->{__NODE_FILTER}; - if (defined $callback) { +# if (defined \$callback) { + if (0) { $callback->set_callback_obj($filter); } else { $callback = XML::Xerces::PerlNodeFilterCallbackHandler->new($filter); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]