summaryrefslogtreecommitdiff
path: root/lib/sbin/ScheduleParser.pl
diff options
context:
space:
mode:
authorallen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac>1999-09-24 18:18:40 +0000
committerallen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac>1999-09-24 18:18:40 +0000
commit98ff38daf3823fa4e66e75623947c18e0a563507 (patch)
tree9d91d69063077b193d5c9b093a73345cf58c8e4f /lib/sbin/ScheduleParser.pl
parent06bda7d807b5f8262697727903d700297beb8f90 (diff)
I committed a big bug earlier today, this should fix it, I hope
noone noticed ... git-svn-id: http://svn.cactuscode.org/flesh/trunk@990 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'lib/sbin/ScheduleParser.pl')
-rw-r--r--lib/sbin/ScheduleParser.pl30
1 files changed, 11 insertions, 19 deletions
diff --git a/lib/sbin/ScheduleParser.pl b/lib/sbin/ScheduleParser.pl
index 490175ba..f1db4aac 100644
--- a/lib/sbin/ScheduleParser.pl
+++ b/lib/sbin/ScheduleParser.pl
@@ -107,7 +107,7 @@ sub parse_schedule_ccl
$buffer .= "\@BLOCK\@$n_blocks\n";
$n_blocks++;
}
- elsif($data[$line_number] =~ m/^\s*(STOR|COMM)[^:]*:\s*/i)
+ elsif($data[$line_number] =~ m/^\s*(STORAGE|COMM(UNICATION)):\s*/i)
{
($line_number, $type, $groups) = &ParseScheduleStatement($line_number, @data);
$schedule_db{"\U$thorn\E STATEMENT_$n_statements TYPE"} = $type;
@@ -345,19 +345,19 @@ sub ParseScheduleBlock
while($data[$line_number] !~ m:\s*\}\s*:)
{
$line_number++;
- if($data[$line_number] =~ m/^\s*STOR[^:]*:\s*(.*)$/i)
+ if($data[$line_number] =~ m/^\s*STORAGE\s*:\s*(.*)$/i)
{
push(@mem_groups, split(/\s,/, $1));
}
- elsif($data[$line_number] =~ m/^\s*COMM[^:]*:(.*)$/i)
+ elsif($data[$line_number] =~ m/^\s*COMM(UNICATION)?\s*:\s*(.*)$/i)
{
- push(@comm_groups, split(/\s,/, $1));
+ push(@comm_groups, split(/\s,/, $2));
}
- elsif($data[$line_number] =~ m/^\s*TRIG[^:]*\s*:\s*(.*)$/i)
+ elsif($data[$line_number] =~ m/^\s*TRIGGER(S)?\s*:\s*(.*)$/i)
{
- push(@trigger_groups, split(/\s,/, $1));
+ push(@trigger_groups, split(/\s,/, $2));
}
- elsif($data[$line_number] =~ m/^\s*LANG[^:]*:\s*(.*)$/i)
+ elsif($data[$line_number] =~ m/^\s*LANG(UAGE)?\s*:\s*(.*)$/i)
{
if($language ne "")
{
@@ -366,7 +366,7 @@ sub ParseScheduleBlock
}
else
{
- $language= $1;
+ $language= $2;
}
}
elsif($data[$line_number] =~ m:\s*\}\s*:)
@@ -426,18 +426,10 @@ sub ParseScheduleStatement
local($line_number, @data) = @_;
local($type, $groups);
- $data[$line_number] =~ m/^\s*(STOR|COMM)[^:]*:\s*([\w\s\,]*)/i;
- if ($1 =~ /STOR/)
- {
- $statement_type = STORAGE;
- }
- elsif ($1 =~ /COMM/)
- {
- $statement_type = COMMUNICATION;
- }
+ $data[$line_number] =~ m/^\s*(STORAGE|COMM(UNICATION)):\s*([\w\s\,]*)/i;
- $type = "\U$statement_type\E";
- $groups = $2;
+ $type = "\U$1\E";
+ $groups = $3;
return ($line_number, $type, $groups);
}