r27043 - in /branches/upstream/libparse-mediawikidump-perl/current: Changes META.yml Makefile.PL lib/Parse/MediaWikiDump.pm

ansgar-guest at users.alioth.debian.org ansgar-guest at users.alioth.debian.org
Wed Nov 19 20:22:52 UTC 2008


Author: ansgar-guest
Date: Wed Nov 19 20:22:49 2008
New Revision: 27043

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=27043
Log:
[svn-upgrade] Integrating new upstream version, libparse-mediawikidump-perl (0.55)

Modified:
    branches/upstream/libparse-mediawikidump-perl/current/Changes
    branches/upstream/libparse-mediawikidump-perl/current/META.yml
    branches/upstream/libparse-mediawikidump-perl/current/Makefile.PL
    branches/upstream/libparse-mediawikidump-perl/current/lib/Parse/MediaWikiDump.pm

Modified: branches/upstream/libparse-mediawikidump-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libparse-mediawikidump-perl/current/Changes?rev=27043&op=diff
==============================================================================
--- branches/upstream/libparse-mediawikidump-perl/current/Changes (original)
+++ branches/upstream/libparse-mediawikidump-perl/current/Changes Wed Nov 19 20:22:49 2008
@@ -1,4 +1,11 @@
 Revision history for Parse-MediaWikiDump
+
+0.55  Nov 17, 2008
+        * Missing dependency in module metadata.
+
+0.54  Nov 16. 2008
+        * Revisiting bug #38206 "Parse::MediaWikiDump XML dump file not closed 
+ 	  on DESTROY" a newly identified memory leak was fixed. 
 
 0.53  Oct 29, 2008
         * Fix for bug #38206 "Parse::MediaWikiDump XML dump file not closed on 

Modified: branches/upstream/libparse-mediawikidump-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libparse-mediawikidump-perl/current/META.yml?rev=27043&op=diff
==============================================================================
--- branches/upstream/libparse-mediawikidump-perl/current/META.yml (original)
+++ branches/upstream/libparse-mediawikidump-perl/current/META.yml Wed Nov 19 20:22:49 2008
@@ -1,12 +1,12 @@
 # http://module-build.sourceforge.net/META-spec.html
 #XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX#
 name:         Parse-MediaWikiDump
-version:      0.53
+version:      0.55
 version_from: lib/Parse/MediaWikiDump.pm
 installdirs:  site
 requires:
     List::Util:                    0
-    Test::Memory::Cycle:           0
+    Object::Destroyer:             0
     Test::More:                    0
     XML::Parser:                   0
 

Modified: branches/upstream/libparse-mediawikidump-perl/current/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libparse-mediawikidump-perl/current/Makefile.PL?rev=27043&op=diff
==============================================================================
--- branches/upstream/libparse-mediawikidump-perl/current/Makefile.PL (original)
+++ branches/upstream/libparse-mediawikidump-perl/current/Makefile.PL Wed Nov 19 20:22:49 2008
@@ -14,7 +14,7 @@
  	'List::Util' => 0,
         'Test::More' => 0,
 	'XML::Parser' => 0,
-        'Test::Memory::Cycle' => 0,
+        'Object::Destroyer' => 0,
     },
     dist                => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
     clean               => { FILES => 'Parse-MediaWikiDump-*' },

Modified: branches/upstream/libparse-mediawikidump-perl/current/lib/Parse/MediaWikiDump.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libparse-mediawikidump-perl/current/lib/Parse/MediaWikiDump.pm?rev=27043&op=diff
==============================================================================
--- branches/upstream/libparse-mediawikidump-perl/current/lib/Parse/MediaWikiDump.pm (original)
+++ branches/upstream/libparse-mediawikidump-perl/current/lib/Parse/MediaWikiDump.pm Wed Nov 19 20:22:49 2008
@@ -1,5 +1,5 @@
 package Parse::MediaWikiDump;
-our $VERSION = '0.53';
+our $VERSION = '0.55';
 
 #the POD is at the end of this file
 
@@ -16,7 +16,7 @@
 use warnings;
 use List::Util;
 use XML::Parser;
-use Scalar::Util qw(weaken);
+use Object::Destroyer;
 
 #tokens in the buffer are an array ref with the 0th element specifying
 #its type; these are the constants for those types. 
@@ -24,7 +24,7 @@
 sub new {
 	my ($class, $source) = @_;
 	my $self = {};
-	my $parser_state;
+	my $parser_state = {}; #Hash::NoRef->new;
 
 	bless ($self, $class);
 
@@ -38,12 +38,11 @@
 	$$self{BUF_LIMIT} = 10000;
 	$$self{BYTE} = 0;
 
-	$parser_state = { 
-		BUFFER => $$self{BUFFER}, 
-		GOOD_TAGS => $$self{GOOD_TAGS},
-	};
-
-	$$self{EXPAT} = $$self{PARSER}->parse_start(state => $parser_state);
+	$parser_state->{GOOD_TAGS} = $$self{GOOD_TAGS};
+	$parser_state->{BUFFER} = $$self{BUFFER};
+
+	my $expat_bb = $$self{PARSER}->parse_start(state => $parser_state);
+	$$self{EXPAT} = Object::Destroyer->new($expat_bb, 'parse_done');
 
 	$self->open($source);
 	$self->init;
@@ -56,6 +55,8 @@
 	my $buffer = $$self{BUFFER};
 	my $offset;
 	my @page;
+
+	return undef if defined $self->{FINISHED};
 
 	#look through the contents of our buffer for a complete article; fill
 	#the buffer with more data if an entire article is not there
@@ -232,7 +233,8 @@
 		die "error during read: $!";
 	} elsif ($read == 0) {
 		$$self{FINISHED} = 1;
-		$$self{EXPAT}->parse_done();
+		$$self{EXPAT} = undef; #parse_done is invoked through 
+				       #Object::Destroyer
 		return 0;
 	}
 




More information about the Pkg-perl-cvs-commits mailing list