From 4f53f8641f5043be23842832489a6fb6528d0731 Mon Sep 17 00:00:00 2001 From: Mickey Nasriachi Date: Mon, 19 Dec 2016 10:55:04 +0100 Subject: [PATCH] GH#63: escape query for autocomplete --- cpanfile | 1 + lib/MetaCPAN/Client.pm | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 9591056..c5ce2d0 100644 --- a/cpanfile +++ b/cpanfile @@ -9,6 +9,7 @@ requires "Net::SSLeay" => "1.49"; requires "Ref::Util" => "0"; requires "Safe::Isa" => "0"; requires "Search::Elasticsearch" => "== 2.03"; # pinned +requires "URI::Escape"; requires "perl" => "5.010"; requires "strict" => "0"; requires "warnings" => "0"; diff --git a/lib/MetaCPAN/Client.pm b/lib/MetaCPAN/Client.pm index 1e92f99..cb0b6fe 100644 --- a/lib/MetaCPAN/Client.pm +++ b/lib/MetaCPAN/Client.pm @@ -6,6 +6,7 @@ package MetaCPAN::Client; use Moo; use Carp; use Ref::Util qw< is_arrayref is_hashref >; +use URI::Escape qw< uri_escape_utf8 >; use MetaCPAN::Client::Request; use MetaCPAN::Client::Author; @@ -179,7 +180,7 @@ sub autocomplete { my $res; eval { - $res = $self->fetch("/search/autocomplete?q=$q"); + $res = $self->fetch( '/search/autocomplete?q=' . uri_escape_utf8($q) ); 1; } or do {