summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--lib/xmlrpc/server.rb4
2 files changed, 11 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 63773b9857..e5683d6886 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Thu Dec 18 08:15:04 2008 James Edward Gray II <jeg2@ruby-lang.org>
+
+ * lib/xmlrpc/server.rb: Restricting method inspection to show only
+ non-inherited public methods. [ruby-core:20603]
+
+ * lib/xmlrpc/server.rb: Fixing method inspection so it doesn't
+ trigger XMLRPC::FaultException when used. [ruby-core:20604]
+
Wed Dec 17 19:39:44 2008 Tanaka Akira <akr@fsij.org>
* ext/socket/socket.c (unix_recv_io): relax msg_controllen error
diff --git a/lib/xmlrpc/server.rb b/lib/xmlrpc/server.rb
index ca8d3b0a5b..0ee88c8c8f 100644
--- a/lib/xmlrpc/server.rb
+++ b/lib/xmlrpc/server.rb
@@ -267,7 +267,9 @@ class BasicServer
if obj.kind_of? Proc
methods << name
else
- obj.methods.each {|meth| methods << name + meth}
+ obj.class.public_instance_methods(false).each do |meth|
+ methods << "#{name}#{meth}"
+ end
end
end
methods