From: doogie <> Date: Mon, 1 May 2000 14:05:37 +0000 (-0800) Subject: [project @ 2000-05-01 07:05:37 by doogie] X-Git-Tag: release/2.6.0~1295 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=24e8ae00b9d0f09aa6bea4af435a79bacec02dcd;p=debbugs.git [project @ 2000-05-01 07:05:37 by doogie] Added a new function, GetBugList(), which returns an array of bug numbers that are active in the db. --- diff --git a/Debbugs/DBase.pm b/Debbugs/DBase.pm index b82d791a..3dbf3950 100644 --- a/Debbugs/DBase.pm +++ b/Debbugs/DBase.pm @@ -164,6 +164,48 @@ sub CloseLogfile close $LogfileHandle; $OpenedLog = 0; } +sub GetBugList +{ +# TODO: This is ugly, but the easiest for me to implement. +# If you have a better way, then please send a patch. +# + my $dir = new FileHandle; + + my @ret; + opendir $dir, $Globals{ "work-dir" } . "/db"; + my @files = readdir($dir); + closedir $dir; + foreach (grep { /\d*\d\d.status/ } @files) { + s/.status$//; + push @ret, $_; +# print "$_ -> $_\n"; + } + foreach (grep { /^[s0-9]$/ } @files) { + my $_1 = $_; + opendir $dir, $Globals{ "work-dir" } . "/db/".$_1; + @files = grep { /^\d$/ } readdir($dir); + closedir $dir; + foreach (@files) { + my $_2 = $_; + opendir $dir, $Globals{ "work-dir" } . "/db/".$_1."/".$_2; + @files = grep { /^\d$/ } readdir($dir); + close $dir; + foreach (@files) { + my $_3 = $_; + opendir $dir, $Globals{ "work-dir" } . "/db/".$_1."/".$_2."/".$_3; + @files = grep { /\d*\d\d.status/ } readdir($dir); + close $dir; + foreach (@files) { + s/.status$//; + push @ret, $_; +# print "$_ -> $_1/$_2/$_3/$_\n"; + } + } + } + } + return @ret; +} + 1; END { } # module clean-up code here (global destructor)