It appears that blank? is not always a method of String. blank? is an
extension from rails in active_support. Would it be better to find out
why String is missing this method in this case or to just deal with it
and use "var.nil? || var.empty?" ?

err: undefined method `blank?' for "facts":String

/opt/puppet/lib/puppet/network/http/handler.rb:185:in `decode_params'
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `inject'
/opt/puppet/lib/puppet/network/http/handler.rb:183:in `each'
/opt/puppet/lib/puppet/network/http/handler.rb:183:in `inject'
/opt/puppet/lib/puppet/network/http/handler.rb:183:in `decode_params'
/opt/puppet/lib/puppet/network/http/mongrel/rest.rb:27:in `params'
/opt/puppet/lib/puppet/network/http/handler.rb:43:in `process'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:159:in
`process_client'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in `each'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in
`process_client'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in
`initialize'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `new'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in
`initialize'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `new'
/usr/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `run'
/opt/puppet/lib/puppet/network/http/mongrel.rb:22:in `listen'
/opt/puppet/lib/puppet/network/server.rb:131:in `listen'
/opt/puppet/lib/puppet/network/server.rb:146:in `start'
/opt/puppet/lib/puppet/daemon.rb:128:in `start'
/opt/puppet/lib/puppet/application/puppetmasterd.rb:96:in `main'
/opt/puppet/lib/puppet/application.rb:226:in `send'
/opt/puppet/lib/puppet/application.rb:226:in `run_command'
/opt/puppet/lib/puppet/application.rb:217:in `run'
/opt/puppet/sbin/puppetmasterd:66
err: undefined method `blank?' for "facts":String


On Jul 1, 9:49 pm, Luke Kanies <[email protected]> wrote:
> +1
>
> Awesome, thanks.
>
> On Jul 1, 2009, at 11:39 PM, Jordan Curzon wrote:
>
>
>
>
>
> > Mongrel::HttpRequest.query_parse outputs a params hash with nil
> > keys given certain query strings. Network::HTTP::Handler.decode_params
> > needs to check the incoming values.
>
> > Signed-off-by: Jordan Curzon <[email protected]>
> > ---
> > lib/puppet/network/http/handler.rb     |    2 ++
> > spec/unit/network/http/mongrel/rest.rb |    5 +++++
> > 2 files changed, 7 insertions(+), 0 deletions(-)
>
> > diff --git a/lib/puppet/network/http/handler.rb b/lib/puppet/network/
> > http/handler.rb
> > index 9528d39..c6b809d 100644
> > --- a/lib/puppet/network/http/handler.rb
> > +++ b/lib/puppet/network/http/handler.rb
> > @@ -182,6 +182,8 @@ module Puppet::Network::HTTP::Handler
> >     def decode_params(params)
> >         params.inject({}) do |result, ary|
> >             param, value = ary
> > +            next result if param.blank?
> > +
> >             param = param.to_sym
>
> >             # These shouldn't be allowed to be set by clients
> > diff --git a/spec/unit/network/http/mongrel/rest.rb b/spec/unit/
> > network/http/mongrel/rest.rb
> > index 5a5d2cf..abd573a 100755
> > --- a/spec/unit/network/http/mongrel/rest.rb
> > +++ b/spec/unit/network/http/mongrel/rest.rb
> > @@ -92,6 +92,11 @@ describe "Puppet::Network::HTTP::MongrelREST" do
> >                 @request.stubs(:params).returns({})
> >             end
>
> > +            it "should skip empty parameter values" do
> > +               �[email protected](:params).returns('QUERY_STRING' =>  
> > "&=")
> > +                lambda { @handler.params(@request) }.should_not  
> > raise_error
> > +            end
> > +
> >             it "should include the HTTP request parameters, with the  
> > keys as symbols" do
> >                 @request.expects(:params).returns('QUERY_STRING' =>  
> > 'foo=baz&bar=xyzzy')
> >                 result = @handler.params(@request)
> > --
> > 1.6.3.3
>
> --
> Men will wrangle for religion; write for it; fight for it; die for it;
> anything but live for it. --Charles Caleb Colton
> ---------------------------------------------------------------------
> Luke Kanies |http://reductivelabs.com|http://madstop.com
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to