Protect utf8param() from undefined values.
[irspy-moved-to-github.git] / lib / ZOOM / IRSpy / Utils.pm
index e567eff..2dbbe13 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Utils.pm,v 1.31 2007-05-03 12:41:58 mike Exp $
+# $Id: Utils.pm,v 1.33 2007-06-27 10:44:57 mike Exp $
 
 package ZOOM::IRSpy::Utils;
 
@@ -35,6 +35,7 @@ sub utf8param {
     die "utf8param() called with value '$value'" if defined $value;
 
     my $raw = $r->param($key);
+    return undef if !defined $raw;
     my $cooked = decode_utf8($raw);
     warn "converted '$raw' to '", $cooked, "'\n" if $cooked ne $raw;
     return $cooked;
@@ -85,7 +86,7 @@ sub xml_encode {
 sub cql_quote {
     my($term) = @_;
 
-    $term =~ s/([""\\])/\\$1/g;
+    $term =~ s/([""\\*?])/\\$1/g;
     $term = qq["$term"] if $term =~ /[\s""\/]/;
     return $term;
 }