summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRenat Lumpau <rl03@gentoo.org>2005-10-24 14:19:14 +0000
committerRenat Lumpau <rl03@gentoo.org>2005-10-24 14:19:14 +0000
commitd836f70c72c429a08cacdc3eecd851acf01de2e3 (patch)
tree6c47047ae964fbbe7d745609276282d218c059bc /www-apps/rt/files
parentMarked ~ppc. (diff)
downloadgentoo-2-d836f70c72c429a08cacdc3eecd851acf01de2e3.tar.gz
gentoo-2-d836f70c72c429a08cacdc3eecd851acf01de2e3.tar.bz2
gentoo-2-d836f70c72c429a08cacdc3eecd851acf01de2e3.zip
Fix for bug #109745.
(Portage version: 2.0.51.22-r2)
Diffstat (limited to 'www-apps/rt/files')
-rw-r--r--www-apps/rt/files/3.4.2/Callback.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/www-apps/rt/files/3.4.2/Callback.patch b/www-apps/rt/files/3.4.2/Callback.patch
new file mode 100644
index 000000000000..e3850e21cfb4
--- /dev/null
+++ b/www-apps/rt/files/3.4.2/Callback.patch
@@ -0,0 +1,38 @@
+diff -upr rt-3.4.3/html/Elements/Callback rt-3.4.3_fixed/html/Elements/Callback
+--- rt-3.4.3/html/Elements/Callback 2005-02-01 09:20:40.000000000 -0500
++++ rt-3.4.3_fixed/html/Elements/Callback 2005-10-24 10:13:58.000000000 -0400
+@@ -53,14 +53,27 @@ my $CacheKey = "Callback--$Page--$_Callb
+ my $callbacks = $cache{$CacheKey} || $m->notes($CacheKey);
+
+ if (!$callbacks) {
+- my $path = "/Callbacks/*$Page/$_CallbackName";
+-
+- $callbacks = [
+- # Skip backup files, and files without a leading package name
+- grep { !/^\.|~$/ and $_ ne "/Callbacks/$Page/$_CallbackName" }
+- $m->interp->resolver->glob_path($path)
+- ];
++ my $path = "/Callbacks/*$Page/$_CallbackName";
+
++ # Due to API changes after Mason 1.28, we have to check for which
++ # version we're running when getting the component roots
++ my @roots = map { $_->[1] }
++ $HTML::Mason::VERSION <= 1.28
++ ? $m->interp->resolver->comp_root_array
++ : $m->interp->comp_root_array;
++
++ my %seen;
++
++ for my $root (@roots) {
++ push @$callbacks,
++ # Skip backup files, files without a leading package name,
++ # and files we've already seen
++ grep { !/^\.|~$/
++ and $_ ne "/Callbacks/$Page/$_CallbackName"
++ and not $seen{$_}++ }
++ $m->interp->resolver->glob_path($path, $root);
++ }
++
+ $m->notes($CacheKey => $callbacks);
+ $cache{$Page,$_CallbackName} = $callbacks if !$RT::DevelMode;
+ }