diff --git a/PBot/Factoids.pm b/PBot/Factoids.pm index fa480cc5..ae1f63d3 100644 --- a/PBot/Factoids.pm +++ b/PBot/Factoids.pm @@ -380,8 +380,9 @@ sub expand_factoid_vars { my $const_action = $action; while ($const_action =~ /(\ba\s*|\ban\s*)?(?new(\$code, readonly => 1); my $vars = $ppi->find(sub { $_[1]->isa('PPI::Token::Symbol') }); my @names = map { $_->symbol =~ /^[\%\@\$]+(.*)/; $1 } @$vars if $vars; + my %uniq = map { $_, 1 } @names; + @names = keys %uniq; $code = $self->expand_factoid_vars($from, $code, @names); $code =~ s/"\$0"/$root_keyword/g;