[MKDoc-commit] [1.6] Don't load audience preferences for audiences
that don't exist.
bruno at mkdoc.demon.co.uk
bruno at mkdoc.demon.co.uk
Thu Feb 3 13:38:44 GMT 2005
Log Message:
-----------
[1.6] Don't load audience preferences for audiences that don't exist.
Fixes internal server error when editing preferences. Correct solution would
be to clean up references to audiences whenever they are deleted or add check
to future fsck tool.
Tags:
----
mkdoc-1-6
Modified Files:
--------------
mkd/flo/User:
Preferences.pm
-------------- next part --------------
Index: Preferences.pm
===================================================================
RCS file: /var/spool/cvs/mkd/flo/User/Preferences.pm,v
retrieving revision 1.11.2.11
retrieving revision 1.11.2.12
diff -Lflo/User/Preferences.pm -Lflo/User/Preferences.pm -u -r1.11.2.11 -r1.11.2.12
--- flo/User/Preferences.pm
+++ flo/User/Preferences.pm
@@ -909,7 +909,12 @@
{
my $self = shift;
my @prefs = load flo::Record::Preference::Audience(User => $self->user);
- my %hash = map { $self->audience_by_id($_->audience_id)->name => $_ } @prefs;
+ my @ok_prefs = ();
+ for (@prefs)
+ {
+ push (@ok_prefs, $_) if ($self->audience_by_id($_->audience_id));
+ }
+ my %hash = map { $self->audience_by_id($_->audience_id)->name => $_ } @ok_prefs;
$self->_set_audience_prefs(\%hash);
}
More information about the MKDoc-commit
mailing list