From 5d3d1e50c6b9e14f4cff88d2a48c44605437c9d4 Mon Sep 17 00:00:00 2001 From: "Johnny C. Lam" Date: Wed, 27 Nov 2013 14:04:17 +0000 Subject: [PATCH] Fix scanning subdirectories of the current one with compiler.pl. git-svn-id: svn://svn.curseforge.net/wow/ovale/mainline/trunk@1222 d5049fe3-3747-40f7-a4b5-f36d6801af5f --- compiler.pl | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/compiler.pl b/compiler.pl index d368899..cc1260a 100644 --- a/compiler.pl +++ b/compiler.pl @@ -129,12 +129,13 @@ $sp{OvaleTimeSpan}{Union} = true; sub ParseDirectory { my $dh = shift; + my $dir = shift; while (defined($r = readdir($dh))) { if ($r =~ m/(.*)\.lua$/) { my $class = $1; - open(F, "<", $r); + open(F, "<", "$dir/$r"); undef $/; my $content = ; close(F); @@ -312,15 +313,13 @@ sub ParseDirectory } } -opendir(my $dh, "."); -ParseDirectory($dh); -closedir($dh); -opendir($dh, "conditions"); -ParseDirectory($dh); -closedir($dh); -opendir($dh, "scripts"); -ParseDirectory($dh); -closedir($dh); +my @directories = (".", "conditions", "scripts"); +while ($dir = shift @directories) +{ + opendir(my $dh, $dir); + ParseDirectory($dh, $dir); + closedir($dh); +} for my $class (keys %sm) { @@ -359,6 +358,6 @@ for my $method (keys %smm) { unless ($smm{$method} eq true) { - print "state:$method $smm{$method}\n"; + print "state matchine state:$method $smm{$method}\n"; } } -- 1.7.9.5