aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/openid.pm
diff options
context:
space:
mode:
authorAmitai Schlair <schmonz-web-ikiwiki@schmonz.com>2014-10-15 23:52:43 +0100
committerSimon McVittie <smcv@debian.org>2014-10-16 22:24:48 +0100
commit09e7c1ad99367eb00d56cfc1e6c64e9b0e361dc4 (patch)
treebfc8eddb51aa4832a69fe4d556b463a71bdc766f /IkiWiki/Plugin/openid.pm
parentcfbcbda0ad848334640ad849ed618873ecba8eb4 (diff)
downloadikiwiki-09e7c1ad99367eb00d56cfc1e6c64e9b0e361dc4.tar
ikiwiki-09e7c1ad99367eb00d56cfc1e6c64e9b0e361dc4.tar.gz
IkiWiki::Plugin::openid: as a precaution, do not call non-coderefs
We're running under "use strict" here, so if CGI->param's array-context misbehaviour passes an extra non-ref parameter, it shouldn't be executed anyway... but it's as well to be safe. [commit message added by smcv]
Diffstat (limited to 'IkiWiki/Plugin/openid.pm')
-rw-r--r--IkiWiki/Plugin/openid.pm4
1 files changed, 3 insertions, 1 deletions
diff --git a/IkiWiki/Plugin/openid.pm b/IkiWiki/Plugin/openid.pm
index 63112d983..384af7e98 100644
--- a/IkiWiki/Plugin/openid.pm
+++ b/IkiWiki/Plugin/openid.pm
@@ -119,7 +119,9 @@ sub validate ($$$;$) {
my $claimed_identity = $csr->claimed_identity($openid_url);
if (! $claimed_identity) {
if ($errhandler) {
- $errhandler->($csr->err);
+ if (ref($errhandler) eq 'CODE') {
+ $errhandler->($csr->err);
+ }
return 0;
}
else {