diff options
Diffstat (limited to 'actionwebservice')
-rw-r--r-- | actionwebservice/CHANGELOG | 2 | ||||
-rw-r--r-- | actionwebservice/lib/action_web_service/dispatcher/abstract.rb | 4 | ||||
-rw-r--r-- | actionwebservice/lib/action_web_service/protocol/xmlrpc_protocol.rb | 2 |
3 files changed, 8 insertions, 0 deletions
diff --git a/actionwebservice/CHANGELOG b/actionwebservice/CHANGELOG index 2ed40aac48..c243b6a343 100644 --- a/actionwebservice/CHANGELOG +++ b/actionwebservice/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Ensure that DispatcherError is being thrown when a malformed request is received. [Kent Sibilev] + * Added support for decimal types. Closes #6676. [Kent Sibilev] * Removed deprecated end_form_tag helper. [Kent Sibilev] diff --git a/actionwebservice/lib/action_web_service/dispatcher/abstract.rb b/actionwebservice/lib/action_web_service/dispatcher/abstract.rb index 9c981e4ec1..cb94d649e7 100644 --- a/actionwebservice/lib/action_web_service/dispatcher/abstract.rb +++ b/actionwebservice/lib/action_web_service/dispatcher/abstract.rb @@ -3,6 +3,10 @@ require 'benchmark' module ActionWebService # :nodoc: module Dispatcher # :nodoc: class DispatcherError < ActionWebService::ActionWebServiceError # :nodoc: + def initialize(*args) + super + set_backtrace(caller) + end end def self.included(base) # :nodoc: diff --git a/actionwebservice/lib/action_web_service/protocol/xmlrpc_protocol.rb b/actionwebservice/lib/action_web_service/protocol/xmlrpc_protocol.rb index 8ec36a29f1..dfa4afc670 100644 --- a/actionwebservice/lib/action_web_service/protocol/xmlrpc_protocol.rb +++ b/actionwebservice/lib/action_web_service/protocol/xmlrpc_protocol.rb @@ -45,6 +45,8 @@ module ActionWebService # :nodoc: def decode_request(raw_request, service_name) method_name, params = XMLRPC::Marshal.load_call(raw_request) Request.new(self, method_name, params, service_name) + rescue + return nil end def encode_request(method_name, params, param_types) |