summaryrefslogtreecommitdiffstats
path: root/ext
diff options
context:
space:
mode:
authorknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-24 15:41:39 +0000
committerknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-24 15:41:39 +0000
commit70475e65416b72cc4d34f9bc343801f88606492e (patch)
treef93502bd3522eb607fba9614da01d9e0b3e44aa4 /ext
parentc652d24078619eb1a0e802fa5b2c6e48cf7ab14c (diff)
downloadruby-70475e65416b72cc4d34f9bc343801f88606492e.tar.gz
ruby-70475e65416b72cc4d34f9bc343801f88606492e.tar.xz
ruby-70475e65416b72cc4d34f9bc343801f88606492e.zip
* class.c (rb_scan_args): Allow specifying the number of trailing
mandatory arguments right after the number of optional arguments only if the number of leading mandatory arguments is not omitted. * ext/socket/tcpserver.c (tcp_svr_init): Make use of it. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r--ext/socket/tcpserver.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/ext/socket/tcpserver.c b/ext/socket/tcpserver.c
index 85020c4bc..111babd27 100644
--- a/ext/socket/tcpserver.c
+++ b/ext/socket/tcpserver.c
@@ -26,12 +26,10 @@
static VALUE
tcp_svr_init(int argc, VALUE *argv, VALUE sock)
{
- VALUE arg1, arg2;
+ VALUE hostname, port;
- if (rb_scan_args(argc, argv, "11", &arg1, &arg2) == 2)
- return init_inetsock(sock, arg1, arg2, Qnil, Qnil, INET_SERVER);
- else
- return init_inetsock(sock, Qnil, arg1, Qnil, Qnil, INET_SERVER);
+ rb_scan_args(argc, argv, "011", &hostname, &port);
+ return init_inetsock(sock, hostname, port, Qnil, Qnil, INET_SERVER);
}
/*