r27045 - in /trunk/libparse-mediawikidump-perl: Changes META.yml Makefile.PL debian/changelog lib/Parse/MediaWikiDump.pm

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


Author: ansgar-guest
Date: Wed Nov 19 20:38:39 2008
New Revision: 27045

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=27045
Log:
NEEDS libobject-destroyer-perl (#506248)
* New upstream release.

Modified:
    trunk/libparse-mediawikidump-perl/Changes
    trunk/libparse-mediawikidump-perl/META.yml
    trunk/libparse-mediawikidump-perl/Makefile.PL
    trunk/libparse-mediawikidump-perl/debian/changelog
    trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm

Modified: trunk/libparse-mediawikidump-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/Changes?rev=27045&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/Changes (original)
+++ trunk/libparse-mediawikidump-perl/Changes Wed Nov 19 20:38:39 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: trunk/libparse-mediawikidump-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/META.yml?rev=27045&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/META.yml (original)
+++ trunk/libparse-mediawikidump-perl/META.yml Wed Nov 19 20:38:39 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: trunk/libparse-mediawikidump-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/Makefile.PL?rev=27045&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/Makefile.PL (original)
+++ trunk/libparse-mediawikidump-perl/Makefile.PL Wed Nov 19 20:38:39 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: trunk/libparse-mediawikidump-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/debian/changelog?rev=27045&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/debian/changelog (original)
+++ trunk/libparse-mediawikidump-perl/debian/changelog Wed Nov 19 20:38:39 2008
@@ -1,9 +1,15 @@
-libparse-mediawikidump-perl (0.53-2) UNRELEASED; urgency=low
+libparse-mediawikidump-perl (0.55-1) UNRELEASED; urgency=low
 
+  NEEDS libobject-destroyer-perl (#506248)
+
+  [ gregor herrmann ]
   * debian/control: Changed: Switched Vcs-Browser field to ViewSVN
     (source stanza).
 
- -- gregor herrmann <gregoa at debian.org>  Sun, 16 Nov 2008 20:45:54 +0100
+  [ Ansgar Burchardt ]
+  * New upstream release.
+
+ -- Ansgar Burchardt <ansgar at 43-1.org>  Wed, 19 Nov 2008 21:36:43 +0100
 
 libparse-mediawikidump-perl (0.53-1) unstable; urgency=low
 

Modified: trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm?rev=27045&op=diff
==============================================================================
--- trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm (original)
+++ trunk/libparse-mediawikidump-perl/lib/Parse/MediaWikiDump.pm Wed Nov 19 20:38:39 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