diff --git a/modules/crossbar.pl b/modules/crossbar.pl
index 63e65572..0d477964 100755
--- a/modules/crossbar.pl
+++ b/modules/crossbar.pl
@@ -33,7 +33,7 @@ crossbar is easily installable; move this file into the B
$Id: crossbar.pl,v 1.4 2008/12/03 11:46:49 leycec Exp $
'; +$ModulesDescription .= '$Id: crossbar.pl,v 1.5 2008/12/08 01:11:53 as Exp $
'; # ....................{ CONFIGURATION }.................... use vars qw($CrossbarPageName @@ -134,19 +134,21 @@ sub CrossbarInit { } # ....................{ MARKUP =before }.................... -push(@MyBeforeApplyRules, \&CrossbarBeforeApplyRule); +*OldCrossbarApplyRules = *ApplyRules; +*ApplyRules = *NewCrossbarApplyRules; -sub CrossbarBeforeApplyRule { - my $markup_ = shift; +sub NewCrossbarApplyRules { + my $text = shift; if (not $CrossbarIsApplied) { my $crossbar_markup = GetPageContent($CrossbarPageName); if ($crossbar_markup and $crossbar_markup !~ m~^(\s*$|$DeletedPage)~) { $CrossbarIsApplied = 1; - $$markup_ =~ s~$CrossbarSubstitutionPattern~ - "\n\n<crossbar>\n\n".QuoteHtml($crossbar_markup). - "\n\n</crossbar>\n\n"~e; + $text =~ s~$CrossbarSubstitutionPattern~ + "\n\n<crossbar>\n\n".QuoteHtml($crossbar_markup). + "\n\n</crossbar>\n\n"~e; } } + return OldCrossbarApplyRules($text, @_); } # ....................{ MARKUP }....................