Граф коммитов

4998 Коммитов

Автор SHA1 Сообщение Дата
nobu bb6a7778fe tcltklib.c: suppress warnings
* ext/tk/tcltklib.c (lib_eventloop_core, lib_thread_callback),
  (ip_rbUpdateCommand, ip_rb_threadUpdateCommand, lib_toUTF8_core),
  (ip_invoke_core): remove unused variables.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-28 04:50:15 +00:00
nobu 78598ebf51 ext/tk/tcltklib.c: adjust nesting
* ext/tk/extconf.rb: check for rb_thread_alive_p and
  rb_thread_check_trap_pending.

* ext/tk/tcltklib.c (rb_thread_alive_p, rb_thread_check_trap_pending):
  define substitutions if not available.

* ext/tk/tcltklib.c (lib_eventloop_core, lib_eventloop_ensure),
  (lib_thread_callback, ip_rbUpdateCommand, ip_rbVwaitCommand),
  (ip_rbTkWaitCommand, call_queue_handler, eval_queue_handler),
  (invoke_queue_handler): adjust nesting.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-28 04:50:12 +00:00
akr 7371736e49 * ext/socket/socket.c (sockaddr_len): return the shortest length for
unknown socket address.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-26 14:34:20 +00:00
naruse 20219afd83 Suppress warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-23 19:50:47 +00:00
mrkn bc43842252 * ext/bigdecimal/bigdecimal.c (BigDecimal_divide): Use Qnil and NIL_P
instead of (VALUE)0 as a return value.

* ext/bigdecimal/bigdecimal.c (BigDecimal_div): ditto.

* ext/bigdecimal/bigdecimal.c (BigDecimal_divremain): ditto.

* ext/bigdecimal/bigdecimal.c (BigDecimal_remainder): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-23 14:30:56 +00:00
mrkn e52a4a70a9 * ext/bigdecimal/bigdecimal.c: Fix style.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-22 01:38:55 +00:00
kazu 7e052c7b81 use rb_pid_t instead of pid_t.
* process.c (rb_execarg_addopt, run_exec_pgroup): use rb_pid_t
  instead of pid_t.

* ext/pty/pty.c (raise_from_check, pty_check): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-21 16:11:32 +00:00
zzak 5d402803ee * ext/date/date_core.c: Typo in Date::MONTHNAMES by Matt Gauger
[GH fixes #261]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-20 22:35:38 +00:00
ayumin 49636da490 * ext/bigdecimal/bigdecimal.c: fixed typo. same as r39830
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-19 19:23:15 +00:00
ayumin 6f072a36c0 * ext/bigdecimal/bigdecimal.c: fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-19 19:19:46 +00:00
sorah 3ee89c6277 * ext/objspace/objspace.c: Fix typo in doc. Patch by Sho Hashimoto.
[Bug #8116] [ruby-dev:47177]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-19 01:09:46 +00:00
kosaki 326dd6e0cc * ext/date/date_core.c: include sys/time.h for avoiding implicit
declaration of gettimeofday().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-16 17:40:16 +00:00
nobu 4002be60c0 console.c: supppress warnings
* ext/io/console/console.c (console_iflush, console_oflush): supppress
  unused-but-set-variable warnings on no tcflush.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-16 08:05:45 +00:00
kosaki 798ff850e4 * configure.in: check struct timeval exist or not.
* include/ruby/missing.h (struct timeval): check HAVE_STRUCT_TIMEVAL
  properly. and don't include sys/time.h if struct timeval exist.

* file.c: include sys/time.h explicitly.
* random.c: ditto.
* thread_pthread.c: ditto.
* time.c: ditto.
* ext/date/date_strftime.c: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-16 05:06:47 +00:00
nobu a7e5f0b5ee internal.h: export rb_sys_fail_path_with_func
* internal.h (rb_sys_fail_path_with_func): export for
  socket/basicsocket.c.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-15 06:08:13 +00:00
akr ca4397ad2c update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-14 03:49:30 +00:00
kazu b1f2460f8d fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-13 10:50:21 +00:00
takano32 976a3041ef * date_core.c: clearly specify operator precedence.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-12 08:05:16 +00:00
zzak 7d183dab15 * ext/pathname/pathname.c (path_f_pathname): rdoc for Pathname()
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-08 04:21:43 +00:00
kazu dbec401c11 use INT2FIX(0) instead of INT2NUM(0).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-05 16:31:19 +00:00
nobu b4a117f8d3 objspace.c: newly added nodes
* ext/objspace/objspace.c (count_nodes): count also newly added nodes,
  and fix key for unknown node.  patch by tmm1 (Aman Gupta) in
  [ruby-core:53130] [Bug #8014]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-05 01:40:52 +00:00
zzak 2a5b45ddc5 * ext/socket/tcpserver.c: Grammar for TCPServer.new from r39554
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-02 22:34:29 +00:00
akr fa0630558f update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-02 15:01:44 +00:00
zzak 6213b8370c * lib/psych.rb: specify in rdoc what object is returned in parser
By Adam Stankiewicz [Github tenderlove/psych#133]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-01 00:18:50 +00:00
zzak 9460a750e1 * ext/psych/lib/psych.rb: rdoc for Psych overview by Adam Stankiewicz
[Github tenderlove/psych#134]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-28 18:27:00 +00:00
akr 338ec3cee7 * ext/socket/raddrinfo.c (inspect_sockaddr): don't show that Unix
domain socket filename is bigger than sizeof(sun_path).
  This limit is not rigid on some platforms such as Darwin and SunOS.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-28 13:29:55 +00:00
akr bf96ea6362 * ext/socket/rubysocket.h (union_sockaddr): make it longer for SunOS
and Darwin.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-27 13:55:19 +00:00
nobu e05392ea77 * ext/Setup.nt: this file has not been used by default.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-25 15:54:00 +00:00
nobu 5919370363 configure.in: find Setup file automatically
* configure.in (setup): find Setup file from target_os 1. by
  suffix (e.g. Setup.nacl, Setup.atheos), 2. by "platform"
  option (e.g. Setup.nt, Setup.emx), and 3. default Setup.  And
  Setup.dj had been removed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-25 04:12:45 +00:00
akr 1580dd29dd * ext/socket/extconf.rb: don't test ss_family and ss_len member of
struct sockaddr_storage.  They are not used now except SunOS
  specific code.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-25 03:40:16 +00:00
akr c89844dbc5 * ext/socket: define and use union_sockaddr instead of struct
sockaddr_storage for less casts.

* ext/socket/rubysocket.h (union_sockaddr): defined.

* ext/socket/socket.c (sock_accept): use union_sockaddr.
  (sock_accept_nonblock): ditto.
  (sock_sysaccept): ditto.
  (sock_s_getnameinfo): ditto.

* ext/socket/basicsocket.c (bsock_getsockname): ditto.
  (bsock_getpeername): ditto.
  (bsock_local_address): ditto.
  (bsock_remote_address): ditto.

* ext/socket/ancdata.c (bsock_recvmsg_internal): ditto.

* ext/socket/init.c (recvfrom_arg): ditto.
  (recvfrom_blocking): ditto.
  (rsock_s_recvfrom): ditto.
  (rsock_s_recvfrom_nonblock): ditto.
  (rsock_getfamily): ditto.

* ext/socket/raddrinfo.c (rb_addrinfo_t): ditto.
  (ai_get_afamily): ditto.
  (inspect_sockaddr): ditto.
  (addrinfo_mdump): ditto.
  (addrinfo_mload): ditto.
  (addrinfo_getnameinfo): ditto.
  (addrinfo_ip_port): ditto.
  (extract_in_addr): ditto.
  (addrinfo_ipv6_to_ipv4): ditto.
  (addrinfo_unix_path): ditto.

* ext/socket/tcpserver.c (tcp_accept): ditto.
  (tcp_accept_nonblock): ditto.
  (tcp_sysaccept): ditto.

* ext/socket/ipsocket.c (ip_addr): ditto.
  (ip_peeraddr): ditto.
  (ip_s_getaddress): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-24 17:51:17 +00:00
tadf 66f9135726 * ext/date/date_core.c: [ruby-core:52303]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-24 12:16:07 +00:00
naruse e525bcd1b3 Add test for [Backport #7896] [ruby-core:52607]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-21 08:31:47 +00:00
nobu 9041f262e0 extmk.rb: extract SUBMAKEOPTS
* ext/extmk.rb (SUBMAKEOPTS): extract common sub make options.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-20 12:06:13 +00:00
nobu ffdb70a696 extmk.rb: rename variables
* ext/extmk.rb: rename working variables as more descriptive so no
  shadowing local variable warnings, and remove unused variables.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-20 12:06:10 +00:00
zzak 206d1c8907 * ext/pty/pty.c: Documentation for the PTY module
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-20 04:37:35 +00:00
mrkn c42cf83f26 * ext/bigdecimal/bigdecimal.gemspec: bump to 1.2.0.
[ruby-core:51777] [Bug #7761]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-19 11:50:48 +00:00
knu e38972354a Remove Syslog#inspect and have only Syslog.inspect.
* ext/syslog/syslog.c (Init_syslog): Define inspect as a singleton
  method and remove it as an instance method. [Bug #6502]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-19 04:13:57 +00:00
drbrain 2163738ffb * ext/openssl/ossl.c (class OpenSSL): Use only inner parenthesis in
create_extension examples.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-19 01:36:30 +00:00
drbrain b043b0592b * ext/openssl/ossl.c (class OpenSSL): Fixed ExtensionFactory example.
Patch by Richard Bradley.  [ruby-trunk - Bug #7551]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-19 01:27:33 +00:00
zzak e39caa7550 * ext/psych/lib/psych/y.rb: Document Kernel#y by Adam Stankiewicz
[Github tenderlove/psych#118]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 16:19:46 +00:00
akr 75a5be3717 * ext/socket/ancdata.c (rsock_recvmsg): ignore truncated part of
socket address returned from recvmsg().

* ext/socket/init.c (recvfrom_blocking): ignore truncated part of
  socket address returned from recvfrom().
  (rsock_s_recvfrom_nonblock): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 11:44:42 +00:00
nobu 78b50f26dc io/console: 0.4.2
* ext/io/console/io-console.gemspec: bump to 0.4.2.  now explicitly
  requires ruby 1.9.3 or later.  [Bug #7847]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 04:13:07 +00:00
nobu 923b8c4eda io/console: set HAVE_RB_SCAN_ARGS_OPTIONAL_HASH
* ext/io/console/extconf.rb: obtain optional hash by rb_scan_args() by
  default right now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 04:00:33 +00:00
nobu 2a62ca666c io/console: fix configuration failure
* ext/io/console/extconf.rb: fix configuration failure by missing
  cpp_include.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 03:58:04 +00:00
nobu 6ba2001d72 io/console: compatibility with 1.8
* ext/io/console/console.c (console_dev): compatibility with ruby 1.8.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 03:47:21 +00:00
nobu 44c24d4416 io/console: compatibility with 1.9
* ext/io/console/console.c (rawmode_opt, console_dev): compatibility
  with ruby 1.9.  [ruby-core:52220] [Bug #7847]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 03:46:34 +00:00
akr 733d65df5e * ext/socket/extconf.rb: don't test sys/feature_tests.h which is not
used now.
  It was included in r7901 as "bug of gcc 3.0 on Solaris 8 ?".



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 00:59:24 +00:00
akr 4b5b88ec79 * ext/socket/extconf.rb: reorder header tests to consider inclusion
order in rubysocket.h.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-16 00:25:54 +00:00
akr d6d0e85320 * configure.in, ext/socket/extconf.rb: test netinet/in_systm.h in
ext/socket/extconf.rb instead of configure.in.

  Originally, netinet/in_systm.h is included for NextStep, OpenStep,
  and Rhapsody.  [ruby-core:1596]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 23:46:44 +00:00
akr 899ba99b90 * configure.in: don't test xti.h here.
* ext/socket/extconf.rb: test xti.h here.

  Originally, xti.h is included for IRIX [ruby-core:14447].



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 22:59:40 +00:00
akr 35f8072e5c preprocessor directives indented.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 22:53:59 +00:00
akr cb31e78379 * ext/socket/extconf.rb: test struct sockaddr_un and its member,
sun_len.

* ext/socket/sockport.h (INIT_SOCKADDR_UN): new macro defined.

* ext/socket/socket.c (sock_s_pack_sockaddr_un): use INIT_SOCKADDR_UN.

* ext/socket/unixsocket.c (rsock_init_unixsock): ditto.

* ext/socket/raddrinfo.c (init_unix_addrinfo): ditto.
  (addrinfo_mload): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 22:19:05 +00:00
akr 84a525bc4e * ext/socket/sockport.h (INIT_SOCKADDR_IN): don't need family
argument.  it is always AF_INET.

* ext/socket/raddrinfo.c (make_inetaddr): follow INIT_SOCKADDR_IN
  change.
  (addrinfo_ipv6_to_ipv4): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 22:08:25 +00:00
usa cd63b84ce9 * ext/socket/extconf.rb: workaround for mswin/mingw build problem.
sendmsg emulation in win32/win32.c is not enough.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 19:23:50 +00:00
akr 41b2a6f01b * ext/socket/extconf.rb: use all all tested available headers for
have_func.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 15:20:34 +00:00
akr e41b789c99 * ext/socket/sockport.h (SET_SIN_LEN): defined for strict-aliasing
rule.
  (INIT_SOCKADDR_IN): ditto.

* ext/socket/raddrinfo.c (make_inetaddr): use INIT_SOCKADDR_IN.
  (addrinfo_ipv6_to_ipv4): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 11:30:19 +00:00
nobu 66c1e7960c socket: ai_addrlen is socklen_t
* ext/socket/raddrinfo.c (rsock_make_hostent): ai_addrlen is not
  size_t but socklen_t.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 07:54:38 +00:00
akr a60e2e5820 * ext/socket/extconf.rb: test struct sockaddr_storage directly.
* ext/socket/rubysocket.h: use HAVE_TYPE_STRUCT_SOCKADDR_STORAGE.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 03:36:05 +00:00
akr 0cc9cea3b4 * ext/socket/getaddrinfo.c (GET_AI): don't cast 1st argument for
INIT_SOCKADDR.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-15 03:27:05 +00:00
akr 1ff7108306 * ext/socket/sockport.h (SET_SS_LEN): removed.
(SET_SIN_LEN): removed.
  (INIT_SOCKADDR): new macro.

* ext/socket/ancdata.c (extract_ipv6_pktinfo): use INIT_SOCKADDR.

* ext/socket/raddrinfo.c (make_inetaddr): use INIT_SOCKADDR.
  (addrinfo_ipv6_to_ipv4): ditto.

* ext/socket/getaddrinfo.c (GET_AI): use INIT_SOCKADDR.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-14 23:14:22 +00:00
akr 4faef960f2 * ext/socket/sockport.h (SA_LEN): removed because unused now.
(SS_LEN): ditto.
  (SIN_LEN): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-14 22:08:28 +00:00
akr 792cfa3fd0 * ext/socket/sockport.h (VALIDATE_SOCKLEN): new macro to validate
sa_len member of 4.4BSD socket address.

* ext/socket/getnameinfo.c (getnameinfo): use VALIDATE_SOCKLEN,
  instead of SA_LEN.

* ext/socket/socket.c (sock_s_getnameinfo): use VALIDATE_SOCKLEN
  instead of SS_LEN. 



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-14 15:17:49 +00:00
akr 1cc445fbbf * ext/socket/socket.c (sockaddr_len): extracted from sockaddr_obj.
(sockaddr_obj): add an argument to length of socket address.
  (socket_s_ip_address_list): call sockaddr_obj with actual socket
  address length if given, use sockaddr_len otherwise.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-14 13:27:46 +00:00
akr 18a8046d1c * ext/socket: always operate length of socket addess companion with
socket address. 

* ext/socket/rubysocket.h (rsock_make_ipaddr): add an argument for
  socket address length.
  (rsock_ipaddr): ditto.

* ext/socket/ipsocket.c (ip_addr): pass length to rsock_ipaddr.
  (ip_peeraddr): ditto.
  (ip_s_getaddress): pass length to rsock_make_ipaddr.

* ext/socket/socket.c (make_addrinfo): pass length to rsock_ipaddr.
  (sock_s_getnameinfo): pass actual address length to rb_getnameinfo.
  (sock_s_unpack_sockaddr_in): pass length to rsock_make_ipaddr.
  
* ext/socket/init.c (rsock_s_recvfrom): pass length to rsock_ipaddr.
  (rsock_s_recvfrom_nonblock): ditto.

* ext/socket/tcpsocket.c (tcp_sockaddr): pass length to
  rsock_make_ipaddr.

* ext/socket/raddrinfo.c (make_ipaddr0): add an argument for socket
  address length.  pass the length to rb_getnameinfo.
  (rsock_ipaddr): ditto.
  (rsock_make_ipaddr): add an argument for socket address length. 
  pass the length to make_ipaddr0.
  (make_inetaddr): pass length to make_ipaddr0.
  a local variable renamed.
  (host_str): a local variable renamed.
  (port_str): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-14 11:28:49 +00:00
akr ed193c50f5 * ext/socket/extconf.rb: don't define HAVE_SA_LEN and HAVE_SA_LEN.
use HAVE_STRUCT_SOCKADDR_SA_LEN and HAVE_STRUCT_SOCKADDR_IN_SIN_LEN
  instead.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-13 23:20:27 +00:00
akr eb4ae6bc54 add comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-13 14:41:28 +00:00
akr 22a04e5720 * ext/socket/extconf.rb: don't define socklen_t here, just test.
* ext/socket/rubysocket.h: define socklen_t if not available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-13 12:01:24 +00:00
akr d7923c8279 * ext/socket/extconf.rb: test functions just after struct members.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-12 20:51:19 +00:00
naruse 062d2ee6f7 * ext/json: merge JSON 1.7.7.
This includes security fix. [CVE-2013-0269]
  d0a62f3ced
  https://groups.google.com/d/topic/rubyonrails-security/4_YvCpLzL58/discussion

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-12 03:05:45 +00:00
akr c799b11273 * ext/socket/extconf.rb: test structure members just after types test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-10 14:43:00 +00:00
akr 5b057eeff2 * ext/socket/extconf.rb: test types just after headers test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-10 11:58:53 +00:00
akr 474e3cd2a7 add comments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-10 03:29:37 +00:00
akr 1ab6dccf4b * ext/socket/extconf.rb: test headers at first.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-10 03:11:00 +00:00
nobu 98932f5150 eval.c: preserve errinfo
* eval.c (rb_ensure): preserve errinfo accross ensure proc before
  JUMP_TAG().  [ruby-core:52022] [Bug #7802]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-08 07:09:48 +00:00
tenderlove 1c836f811c * ext/psych/lib/psych/visitors/yaml_tree.rb: fixing string quotation
when dumping Ruby strings. Thanks Ingy

* test/psych/test_psych.rb: appropriate tests.

* test/psych/test_yaml.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-07 23:54:29 +00:00
tenderlove 7a68f53dc6 * ext/psych/lib/psych/visitors/yaml_tree.rb: change output reference
ids to be sequential numbers.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-07 23:52:01 +00:00
zzak 90eb265f86 * doc/pty/README: Remove static documentation file
* ext/pty/pty.c: Add License to PTY module overview


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 20:51:56 +00:00
zzak a493ec0388 * doc/pty/README.expect: Removed static documentation file
* ext/pty/lib/expect.rb: Documentation for IO#expect


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-06 14:31:32 +00:00
nobu 490f1fc009 console.c: default by stty raw
* ext/io/console/console.c (rawmode_opt): use default values by `stty
  raw`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-05 04:27:57 +00:00
zzak 53bc349069 * ext/json/lib/json.rb: Move module overview definition for rdoc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 19:39:15 +00:00
nobu d06141cde7 io-console.gemspec: 0.4.1
* ext/io/console/io-console.gemspec: bump to 0.4.1.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 12:23:51 +00:00
nobu 1a15c3770e io-console.gemspec: limit date length
* ext/io/console/io-console.gemspec: limit Date keyword length to get rid of locale format.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 12:15:32 +00:00
nobu 36ed400fe3 io-console.gemspec: update
* ext/io/console/io-console.gemspec: use Date keyword and add licenses.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 12:09:16 +00:00
nobu a9cbe8c721 init.c: declaration-after-statement
* ext/socket/init.c (cloexec_accept): fix declaration-after-statement.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 06:19:40 +00:00
nobu 523292d612 console.c: initialize
* ext/io/console/console.c (rawmode_opt): initialize options for the
  case all options are not given.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-04 06:10:12 +00:00
nobu 80455c0d97 * ext/io/console/io-console.gemspec: fix date.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-03 08:22:43 +00:00
nobu b3d12956b4 io-console.gemspec: bump
* ext/io/console/io-console.gemspec: bump.  [Bug #7762]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-03 07:54:29 +00:00
nobu f050b22327 console.c: fix unit of min
* ext/io/console/console.c (rawmode_opt): min is minimum characters,
  not tenths.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-03 07:54:18 +00:00
shugo 46ea3f6555 * ext/readline/extconf.rb, ext/readline/readline.c: check
RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE directly in
  readline.c.  Patch by Zachary Scott.  [Bug #7397] [ruby-core:49561]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-01 05:37:29 +00:00
shugo 4ccfb2743f * ext/socket/raddrinfo.c (rsock_unix_sockaddr_len): return
sizeof(sa_familiy_t) if path is empty.  see "Autobind Feature" in
  unix(7) for details.

* ext/socket/lib/socket.rb (unix_socket_abstract_name?): treat an
  empty path as an abstract name.

* test/socket/test_unix.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-31 04:59:31 +00:00
akr 1ff38a5bbf * ext/socket/basicsocket.c (bsock_getsockname): ignore truncated
part of socket address.
  (bsock_getpeername): ditto.
  (bsock_local_address): ditto.
  (bsock_remote_address): ditto.

* ext/socket/unixsocket.c (unix_path): ditto.
  (unix_addr): ditto.
  (unix_peeraddr): ditto.

* ext/socket/init.c (cloexec_accept): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-30 12:01:51 +00:00
shugo e16b8482c7 * ext/socket/unixsocket.c (rsock_init_unixsock): use rb_inspect()
because rb_sys_fail_str() fails if its argument contains NUL.

* test/socket/test_unix.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-30 06:30:12 +00:00
nobu 18a8812e36 debug: trivial fixes
* ext/-test-/debug/init.c (Init_debug): use normal module.

* ext/-test-/debug/inspector.c (callback): debug_inspector interfaces
  now use long.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-29 09:30:37 +00:00
ko1 18e01f6381 * vm_backtrace.c: fix issue of rb_debug_inspector_open().
The order of making binding should be stack (frame) top to bottom.
  [Bug #7635]
  And also fix issue of collecting klass. Collecting klass is same
  as TracePoint#defined_class.
  (previous version, it returns T_ICLASS (internal objects).
* test/-ext-/debug/test_debug.rb: add a test.
* ext/-test-/debug/extconf.rb, init.c, inspector.c: ditto.
* vm_backtrace.c: remove magic number and add enum CALLER_BINDING_*.
* vm_backtrace.c, include/ruby/debug.h: add new C api (experimental)
  rb_debug_inspector_frame_self_get().
* vm.c, vm_core.h, vm_trace.c: move decl. of
  rb_vm_control_frame_id_and_class() and constify first parameter.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-29 08:25:32 +00:00
nobu b0c4ac7779 proc.c: original arity
* proc.c (rb_mod_method_arity): return original arity of the method if
  aliased because of visibility change, like as Method#arity.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-29 07:49:22 +00:00
shugo a1ed445b81 * ext/socket/socket.c (sock_s_pack_sockaddr_un): calculate the
correct address length of an abstract socket.

* test/socket/test_unix.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-29 00:32:05 +00:00
akr 8477d3131c * ext/fcntl/fcntl.c: update document. use "file descriptor" instead
of "file handle" because it is not used other Ruby documents and
  it is confusing with Windows file handle.
  correct F_DUPFD behavior.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-28 03:34:43 +00:00
nari 68d131d6a5 fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-26 09:51:34 +00:00
drbrain 623f6d6673 * ext/fcntl/fcntl.c: Document Fcntl constants
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-26 04:36:14 +00:00
nobu a110d1782e extconf.rb: fix warnings
* ext/socket/extconf.rb: fix warnings from IN6_IS_ADDR_ macros in
  apple's netinet6/in6.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-26 02:31:40 +00:00
shugo 07e9f122a9 * ext/socket/raddrinfo (rsock_unix_sockaddr_len): renamed from
rsock_unixpath_len, because it returns not the length of the path,
  but the length of a socket address for the path.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-25 23:33:50 +00:00
suke 57408cb1d1 * ext/win32ole/win32ole.c: use TlsAlloc instead of __declspec(thread)
to avoid SEGV if win32ole.so loaded with LoadLibrary in Windows
  Vista or earlier.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-25 10:17:59 +00:00
shugo ad55d141eb * ext/socket/raddrinfo.c (rsock_unixpath_len, init_unix_addrinfo),
ext/socket/unixsocket.c (unixsock_connect_internal,
  rsock_init_unixsock): calculate the correct address length of
  an abstract socket.  Without this fix, sizeof(struct sockaddr_un)
  is specified as the length of an abstract socket for bind(2) or
  connect(2), so the address of the socket is filled with extra NUL
  characters.  See unix(7) for details.

* ext/socket/lib/socket.rb (unix_server_socket): don't access the
  file system if the platform is Linux and path starts with NUL,
  which means that the socket is an abstract socket.

* test/socket/test_unix.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-25 08:15:26 +00:00
nobu c669931941 vpath.rb: hack for msys make
* tool/vpath.rb (VPath#def_options): hack for msys make, which
  converts a command line argument to non-msys command seems like a
  path list automagically.  [Bug #7710] [ruby-core:51489]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-20 13:24:31 +00:00
nobu 090d20fc16 win32ole: remove win32ole.rb
* ext/win32ole/lib/win32ole.rb: no longer used.  [Bug #2618] [ruby-core:27634]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 02:29:59 +00:00
nobu 27ed294c71 win32ole: OLE uninitialize
* ext/win32ole/win32ole.c (ole_initialize): uninitialize OLE at thread
  ends.  [Bug #2618] [ruby-core:27634]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 02:24:35 +00:00
nobu 588504b20f win32ole: OLE initialize per threads
* ext/win32ole/win32ole.c (ole_initialize): initialize OLE for each
  threads.  [Bug #2618] [ruby-core:27634]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 02:23:37 +00:00
nobu 03d19637f6 win32ole: warning flag
* ext/win32ole/extconf.rb (create_win32ole_makefile): replace or
  append warning flag.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-17 08:50:12 +00:00
nobu a23469f4b6 win32ole: unused variables
* ext/win32ole/win32ole.c (ole_methods_sub, ole_variables),
  (ole_search_event_at): remove unused variables.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-17 08:50:09 +00:00
nobu 70c647b8c5 win32ole.c: prototype
* ext/win32ole/win32ole.c: use prototype instead of old K&R style.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-17 05:06:28 +00:00
tenderlove 679a646e37 * ext/psych/lib/psych/scalar_scanner.rb: use constants rather than
calculating Inf and NaN.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-17 01:49:55 +00:00
nobu 0c61c3b67b win32ole.rb: use TracePoint
* ext/win32ole/lib/win32ole.rb: use TracePoint to hook all thread
  creation not only by Thread.new and to get rid of interference with
  svar scope.  [Bug #7681] [ruby-core:51365]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-16 09:45:48 +00:00
mrkn a4665e30f7 * ext/bigdecimal/bigdecimal.c (BigDecimal_to_s): use CRuby style.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-14 05:42:51 +00:00
mrkn 512b987544 * ext/bigdecimal/bigdecimal.c: use `RB_TYPE_P(x, t)` instead of
`TYPE(x) == t`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-14 05:42:48 +00:00
zzak c12d66f0d1 * ext/psych/yaml/scanner.c: Fix typos, patch by James Dabbs
[Github tenderlove/psych#118]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-13 07:47:10 +00:00
mrkn dc2182aab8 * ext/bigdecimal/bigdecimal.c (BigDecimal_sub):
need to specify precision for converting Rational and Float.
  [ruby-dev:46544] [Bug #7404]

* ext/bigdecimal/bigdecimal.c (BigDecimal_mult): ditto.

* ext/bigdecimal/bigdecimal.c (BigDecimal_divide): ditto.

* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): ditto.

* ext/bigdecimal/bigdecimal.c (BigDecimal_divremain): ditto.

* test/bigdecimal/test_bigdecimal.rb: add tests for the above fixes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-13 06:15:37 +00:00
nobu c2f9fcad71 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-12 01:41:43 +00:00
tenderlove 0a60805af5 * ext/psych/lib/psych/visitors/to_ruby.rb: merge key values that
contain something besides a hash should be left in tact.

* test/psych/test_merge_keys.rb: test for change

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-12 00:00:12 +00:00
suke 92a7da1900 * ext/win32ole/win32ole.c (ole_set_byref): support VT_UI8|VT_BYREF,
VT_I8|VT_BYREF in cygwin and mingw.
	  
* ext/win32ole/win32ole.c (ole_variant2val): ditto.

* test/win32ole/test_win32ole_variant.rb (test_s_new_with_i8_byref):
  ditto.

* test/win32ole/test_win32ole_variant.rb (test_s_new_with_ui8_byref):
  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-11 22:59:51 +00:00
nobu a5ddc2e196 extconf.rb: have_header
* ext/tk/extconf.rb (find_tcltk_header): use have_header instead of
  try_cpp, which is incredibly slow with VC.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-10 07:47:20 +00:00
tenderlove b104e2524d * ext/psych/lib/psych/scalar_scanner.rb: strip trailing dots from
floats so that Float() will not raise an exception.

* test/psych/test_numeric.rb: test to ensure "1." can be loaded

* test/psych/test_string.rb: make sure "1." can round trip

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-09 19:26:45 +00:00
tenderlove ac8b1869c0 * ext/psych/lib/psych/visitors/yaml_tree.rb: ascii only binary strings
will be dumped as unicode.  Thanks Paul Kunysch!

* test/psych/test_string.rb: appropriate test

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-09 19:26:36 +00:00
mrkn 1be6a498ba * ext/bigdecimal/bigdecimal.c (rmpd_power_by_big_decimal):
add RB_GC_GUARD to prevent the immediate object is GCed too early.
  This patch was made by Yusuke Endoh.  [Bug #7044] [ruby-core:47632]

* test/bigdecimal/test_bigdecimal.rb: add a reproduction test for
  the issue [Bug #7044]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-07 14:42:52 +00:00
shugo 9cadf0c039 * eval.c (Init_eval): enable Refinements by default.
[ruby-core:51286] [Bug #7667]

* eval.c (rb_mod_refine, top_using): show a warning when
  Module#refine or main.using is called at the first time.

* ext/refinement/*: removed the extension library "refinement".

* test/ruby/test_refinement.rb: fix for the above changes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-07 11:22:31 +00:00
zzak 3e028faf7c * ext/psych/lib/psych.rb (Psych.load): Return value of
Psych::SyntaxError.message should be same as example.
  Patch by Ippei Obayashi [ruby-core:51193] [Bug #7636]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-03 06:13:56 +00:00
zzak 762aa293ca * ext/zlib/zlib.c (Zlib::GzipFile): Fix typo by zed_0xff
[Fixes Github #229]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-01 18:10:34 +00:00
shugo cdabc58f8e * ext/curses/curses.c (window_cury, window_curx, window_maxy,
window_maxx, window_begy, window_begx): use RB_UNUSED_VAR()
  to suppress unused-but-set-variable warnings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-29 12:54:41 +00:00
glass 89182621d9 * ext/stringio/stringio.c (strio_getline): fix not to raise TypeError
when limit is nil.
  [Bug #7232] [ruby-core:48531]

* test/stringio/test_stringio.rb: a test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 12:21:17 +00:00
glass cd453f16b4 * ext/stringio/stringio.c (strio_ungetc): raise IOError instead of RuntimeError
if the string is frozen.
  [Bug #7231] [ruby-core:48530]

* ext/stringio/stringio.c (strio_ungetbyte): ditto.

* test/stringio/test_stringio.rb: a test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 11:43:02 +00:00
nobu 20a5505349 zlib.c: function name
* ext/zlib/zlib.c (rb_gzreader_lines): fix function name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-23 06:21:49 +00:00
knu c47c095b97 Deprecate #{lines,bytes,chars,codepoints} of IO-likes.
* io.c (rb_io_lines, rb_io_bytes, rb_io_chars, rb_io_codepoints):
  Deprecate IO#{lines,bytes,chars,codepoints} and those of ARGF.
  [Feature #6670]

* ext/stringio/stringio.c (strio_lines, strio_bytes, strio_chars)
  (strio_codepoints): Deprecate
  StringIO#{lines,bytes,chars,codepoints}. [Feature #6670]

* ext/zlib/zlib.c (rb_gzreader_lines, rb_gzreader_bytes):
  Deprecate Zlib::GzipReader#{lines,bytes}. [Feature #6670]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-22 17:22:04 +00:00
kou 8346f7b2ad * ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):
CPtr -> Pointer.
* test/fiddle/test_c_struct_entry.rb
  (Fiddle::TestCStructEntity#test_aref_pointer):
  Added the test for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 14:16:02 +00:00
kou e852838cee * ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):
CPtr -> Pointer.
* test/fiddle/test_c_struct_entry.rb
  (Fiddle::TestCStructEntity#test_aref_pointer_array):
  Added the test for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 14:12:57 +00:00
kou 3fed8bc9a5 * ext/fiddle/lib/fiddle/import.rb (Fiddle::Importer#sizeof):
CPtr -> Pointer.
* test/fiddle/test_import.rb (Fiddle::TestImport#test_sizeof):
  Added the test for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-21 13:44:44 +00:00
nobu ee26f5ec25 tkutil.c: NIL_P
* ext/tk/tkutil/tkutil.c (tk_symbolkey2str, ary2list, ary2list2): do
  not assume NIL_P() to be parenthesized always.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-20 09:28:35 +00:00
nobu 026518c8e5 ossl.c: RTEST
* ext/openssl/ossl.c (ossl_fips_mode_set): do not assume RTEST() to be
  parenthesized always.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-20 09:28:33 +00:00
emboss b9bd8eaf3b * ext/openssl/ossl_cipher.c: fix errors for installations that do not
feature Authenticated Encryption.
* ext/openssl/extconf.rb: detect presence of EVP_CTRL_GCM_GET_TAG to
  determine whether Authenticated Encryption can be used.
  [Feature #6980] [ruby-core:47426]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-20 07:42:56 +00:00
emboss 4fce754f9b * ext/openssl/ossl.c: do not use FIPS_mode_set if not available.
* test/openssl/utils.rb: revise comment about setting FIPS mode to
  false.
* test/openssl/test_fips.rb: remove tests that cause errors on
  ruby-ci.
  [Feature #6946] [ruby-core:47345]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-20 07:00:11 +00:00
nobu d3d00ab8fe * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-20 06:18:26 +00:00
emboss 215b54806b * ext/openssl/ossl_cipher.c: add support for Authenticated Encryption
with Associated Data (AEAD) for OpenSSL versions that support the
  GCM encryption mode. It's the only mode supported for now by OpenSSL
  itself. Add Cipher#authenticated? to detect whether a chosen mode
  does support Authenticated Encryption.
* test/openssl/test_cipher.rb: add tests for Authenticated Encryption.
  [Feature #6980] [ruby-core:47426] Thank you, Stephen Touset for
  providing a patch!



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-20 06:03:03 +00:00
emboss a3b753b282 * ext/openssl/ossl.c: add OpenSSL.fips_mode= to allow enabling FIPS
mode manually.
* test/openssl/utils.rb: turn off FIPS mode for tests. This prevents
  OpenSSL installations with FIPS mode enabled by default from raising
  FIPS-related errors during the tests.
* test/openssl/test_fips.rb: add tests for FIPS-capable OpenSSL
  installations.
  [Feature #6946] [ruby-core:47345]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-20 00:29:07 +00:00
zzak bfa7a49d31 * ext/.document: Add missing ext modules to .document
Patch by Ryunosuke SATO [Fixes Github #224]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-19 16:04:11 +00:00
nagachika 606b66db7d * vm.c (rb_vm_make_jump_tag_but_local_jump): take care of the case
TAG_JUMP() with TAG_FATAL (ex. rb_fatal()).

* test/ruby/test_fiber.rb (test_fatal_in_fiber): add a test for above.

* ext/-test-/fatal/extconf.rb, ext/-test-/fatal/rb_fatal.c: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-18 04:30:44 +00:00
emboss 84f1dae9d6 * ext/openssl/lib/ssl.rb: Enable insertion of empty fragments as a
countermeasure for the BEAST attack by default. The default options
  of OpenSSL::SSL:SSLContext are now:
  OpenSSL::SSL::OP_ALL & ~OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS
  [Bug #5353] [ruby-core:39673]

* test/openssl/test_ssl.rb: Adapt tests to new SSLContext default.

* NEWS: Announce the new default.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-18 02:02:43 +00:00
tenderlove 4654d75ea3 * ext/psych/lib/psych/visitors/to_ruby.rb: speed up node mapping so
common cases are evaluated first.  Thanks Kevin Menard!

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-17 18:04:50 +00:00
ngoto 48bcb55c41 * ext/fiddle/pointer.c (rb_fiddle_ptr2cptr): fix error message forgotten to be changed from DL to Fiddle.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-15 15:04:25 +00:00
ngoto 13b20230f9 * ext/.document: add fiddle/pointer.c, fiddle/handle.c, and fiddle/win32/lib as documentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-14 18:47:02 +00:00
tenderlove 8a4cc4e02a * ext/psych/lib/psych/visitors/yaml_tree.rb: quote strings that begin
with non-word characters.  Thanks Alex Tambellini!
* test/psych/test_yaml.rb: appropriate test case

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-13 22:45:16 +00:00
shugo 3a6dec0c5d * include/ruby/ruby.h (RB_UNUSED_VAR): new macro to suppress
warnings for unused variables.

* ext/bigdecimal/bigdecimal.c (ENTER): use RB_UNUSED_VAR() to
  suppress annoying warnings by -Wunused-but-set-variable in gcc 4.6.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-13 03:09:22 +00:00
naruse 43f6fdfb42 * ext/json: merge JSON 1.7.5.
fix tests and other fixes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-12 10:51:49 +00:00
ngoto 1fcde7c2e2 * ext/dl/lib/dl/func.rb (DL::Function#unbind, #bound?): suppress NoMethodError when Fiddle is available. [ruby-core:50756] [Bug #7543]
* test/dl/test_func.rb (test_bound*, test_unbind*): tests for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-11 15:24:31 +00:00
ngoto 3e6a624a83 * ext/fiddle/function.c (Fiddle::Function.new): new keyword argument :name to set the name attribute.
* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function): set function name by using the :name keyword argument.
  Re-fixes r38243. [ruby-core:50566]
* test/fiddle/test_function.rb (test_name): test for the :name keyword argument and Fiddle::Function#name.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-11 10:41:00 +00:00
drbrain d5ba73e0d9 * ext/pathname/lib/pathname.rb: Hide private methods from RDoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-11 06:25:56 +00:00
naruse addefaa6a3 * ext/dl/win32/extconf.rb: Fix typo
by Santiago Pastorino <santiago@wyeworks.com>
  https://github.com/ruby/ruby/pull/221 fix GH-221

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-11 03:02:04 +00:00
nobu 0e7fd84774 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-10 09:03:17 +00:00
usa f9aa334b5b * ext/fiddle/win32/*: library ports from DL to Fiddle.
* ext/dl/win32/extconf.rb: check fiddle.  often case dl compiled prior
  to fiddle, so this change is no meaning.  in most cases, simply
  fiddle/win32 overwrite dl/win32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-10 09:01:27 +00:00
marcandre 537030e19b Improve rdoc for Ripper, based on a patch by Oscar Del Ben [github:219]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-08 07:06:24 +00:00
drbrain 3adc9834d1 * ext/openssl/ossl_x509name.c: Completed documentation for
OpenSSL::X509::Name.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-08 00:26:56 +00:00
ko1 1c5b309211 * ext/objspace/objspace.c (iow_size): return size of internal object
for ObjectSpace.memsize_of().
* test/objspace/test_objspace.rb: add a test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-08 00:18:42 +00:00
shugo c36d15f206 * ext/refinement/refinement.c: include ruby/ruby.h instead of the
declaration of rb_warn().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 14:44:02 +00:00
zzak a756aa75ea * doc/etc.rd: Removed stale documentation file
* ext/etc/etc.c:  Merged documentation from doc/etc.rd and updated
  rdoc, added documentation for Etc::Passwd and Etc::Group


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 07:08:06 +00:00
ngoto 97de2b36e9 * ext/fiddle/closure.c (Fiddle::Closure.new): fix typo in documentation
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 04:39:39 +00:00
ngoto a297576c37 * ext/fiddle/function.c (Fiddle::Function.new): fix typo in documentation
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 04:35:43 +00:00
naruse 811efc8276 Add declaration of rb_warn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 02:55:28 +00:00
ngoto 0bc733d9e3 * ext/fiddle/lib/fiddle/function.rb (Fiddle::Function#name): new
attribute needed to switch Win32::Registry from DL to Fiddle.

* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
  set function name to the returned Fiddle::Function object.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 16:21:43 +00:00
shugo 328e0ff5ad * eval.c (ruby_Init_refinement): a new function to enable
Refinements with a warning "Refinements are experimental...".

* ext/refinement/refinement.c, ext/refinement/extconf.rb: a new
  extension library to enable Refinements.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 14:31:43 +00:00
ngoto 34592fb5b6 * ext/dl/lib/dl/func.rb (CALL_TYPE_TO_ABI, FiddleClosureCFunc): exclude private constants and methods from rdoc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 14:30:24 +00:00
ngoto 382217c8b6 * ext/fiddle/lib/fiddle/import.rb (CALL_TYPE_TO_ABI): exclude private constant from RDoc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 14:27:38 +00:00
ngoto 9920da5593 * ext/dl/lib/dl/func.rb (DL::Function#bind): When Fiddle is used,
@ptr should be updated. This fixes SEGV raised in DL::Function#call
  after calling DL::Function#bind. [Bug #7516] [ruby-dev:46708]
* test/dl/test_func.rb (test_bind): test for the above


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 13:24:19 +00:00
nobu 94cb1c9b4b * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 04:08:17 +00:00
ngoto f1841f43eb * ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind):
ABI should be set by using CFunc#calltype even when Fiddle is used.
  When Fiddle is used and a block is given, name shoud not be ignored.
  [ruby-core:50562] [Bug #7514]
* ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect
  abi and name when Fiddle is used.
* test/dl/test_func.rb (test_name_with_block): test for "name" method
  with giving a block.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 03:20:05 +00:00
ngoto b6b8960018 * ext/fiddle/lib/fiddle/types.rb: copied from ext/dl/lib/dl/types.rb
and modified for Fiddle, needed for migration from DL to Fiddle.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 09:08:12 +00:00
ngoto 7b103012dc * ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
should respect call_type for migration from DL to Fiddle.
  [Bug #7484] [ruby-core:50405]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 09:00:23 +00:00
mrkn 1fec21fe60 * ext/bigdecimal/bigdecimal.c (BigDecimal_new): stop checking string
taintness.  [Bug #5508] [ruby-core:40510]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-02 15:09:49 +00:00
naruse b1b7c389fb suppress warnings: uninitialized variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 19:10:14 +00:00
ngoto 4bb1bfa0ed * ext/fiddle/extconf.rb, ext/fiddle/function.c
(Fiddle::Function::STDCALL): FFI_STDCALL is not a macro, but an enumeration. [ruby-core:50398] [Bug #7483]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 15:57:21 +00:00
nobu ed0aa14fcc zlib.c: suppress warning
* ext/zlib/zlib.c (zstream_run): suppress unused-but-set-variable
  warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 09:50:32 +00:00
nobu 578deb65b0 zlib.c: suppress warning
* ext/zlib/zlib.c (zlib_mem_alloc): suppress unused-value warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 09:50:30 +00:00
nobu e553663cbd value.rb: adjust indent
* ext/fiddle/lib/fiddle/value.rb (Fiddle::ValueUtil#wrap_arg): adjust
  indent.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 01:35:13 +00:00
nobu 1459cabe70 value.rb: remove DL
* ext/fiddle/lib/fiddle/value.rb (Fiddle::ValueUtil#wrap_arg): remove
  deprecated require.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-30 01:35:08 +00:00
ngoto 36c40166ac * ext/openssl/ossl_ssl.c (ssl_npn_encode_protocol_i): fix byte order
issue on big-endian architecture [ruby-core:50292] [Bug #7463]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 13:54:02 +00:00
usa a985c5898c * ext/psych/extconf.rb: added --enable-bundled-libyaml option. this
enforces using bundled libyaml.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 06:54:53 +00:00
nagachika 7b6e26ae14 * ext/fiddle/closure.c: cosmetic fix for rdoc comment. (fix for r37917)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 14:55:41 +00:00
nobu ac93d931fa emitter.c: constify
* ext/psych/yaml/emitter.c (yaml_emitter_write_indicator): constify.
* ext/psych/yaml/emitter.c (yaml_emitter_write_block_scalar_hints):
  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 12:23:20 +00:00
nobu 082a2716cc extconf.rb: mingw32
* ext/psych/extconf.rb: mingw32 also needs macros for win32, not
  only mswin32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37935 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 12:22:47 +00:00
nobu d8da0faf23 extconf.rb: VPATH
* ext/psych/extconf.rb: compile sources in the source directory
  without copying by using VPATH.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 12:21:19 +00:00
ko1 1ff0a3d0c6 * ext/psych/extconf.rb: copy sources into build directory,
not into srcdir.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 05:52:11 +00:00
tenderlove 14099149f4 * ext/psych/extconf.rb: use embedded libyaml if no system libyaml is
found. [ruby-core:49463]
* ext/psych/lib/psych.rb: updating to psych 2.0.0
* ext/psych/lib/psych/deprecated.rb: updated docs
* ext/psych/psych.gemspec: updated to psych 2.0.0
* ext/psych/psych.h: fixing header file include for rename
* ext/psych/psych_emitter.c: renamed to avoid libyaml conflict.
* ext/psych/psych_emitter.h: ditto
* ext/psych/psych_parser.c: ditto
* ext/psych/psych_parser.h: ditto
* ext/psych/psych_to_ruby.c: ditto
* ext/psych/psych_to_ruby.h: ditto
* ext/psych/psych_yaml_tree.c: ditto
* ext/psych/psych_yaml_tree.h: ditto
* ext/psych/yaml/LICENSE: embedding libyaml 0.1.4
* ext/psych/yaml/api.c: ditto
* ext/psych/yaml/config.h: ditto
* ext/psych/yaml/dumper.c: ditto
* ext/psych/yaml/emitter.c: ditto
* ext/psych/yaml/loader.c: ditto
* ext/psych/yaml/parser.c: ditto
* ext/psych/yaml/reader.c: ditto
* ext/psych/yaml/scanner.c: ditto
* ext/psych/yaml/writer.c: ditto
* ext/psych/yaml/yaml.h: ditto
* ext/psych/yaml/yaml_private.h: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 04:34:41 +00:00
zzak 4ed6a88b74 * ext/fiddle/closure.c: Documentation for Fiddle
* ext/fiddle/lib/fiddle/import.rb: ditto
* ext/fiddle/lib/fiddle/value.rb: ditto
* ext/fiddle/lib/fiddle/pack.rb: ditto
* ext/fiddle/lib/fiddle/cparser.rb: ditto
* ext/fiddle/lib/fiddle/struct.rb: ditto
* ext/fiddle/lib/fiddle/function.rb: ditto



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 02:08:39 +00:00
ryan 0700a9113f Added #charpos for multibyte string position.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 00:17:33 +00:00
tenderlove 0713f89944 * ext/fiddle/fiddle.c: adding alignment constants for compatibility
with DL.
* ext/fiddle/fiddle.h: ditto
* ext/fiddle/lib/fiddle/cparser.rb: importing the C parser for DL
  backwards compatibility.
* ext/fiddle/lib/fiddle/import.rb: importing the import DSL for DL
  backwards compatibility.
* ext/fiddle/lib/fiddle/pack.rb: importing structure pack for DL
  backwards compatibility.
* ext/fiddle/lib/fiddle/value.rb: ditto
* ext/fiddle/lib/fiddle/struct.rb: importing struct DSL for DL backwards
  compatibility.
* test/dl/test_c_struct_entry.rb: importing tests
* test/dl/test_c_union_entity.rb: ditto
* test/dl/test_cparser.rb: ditto
* test/dl/test_import.rb: ditto
* test/fiddle/test_c_struct_entry.rb: ditto
* test/fiddle/test_c_union_entity.rb: ditto
* test/fiddle/test_cparser.rb: ditto
* test/fiddle/test_import.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 00:02:49 +00:00
zzak 4ba88161ee * ext/dl/lib/dl.rb: Deprecation notice for DL
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 23:27:36 +00:00
zzak 9c831edbf4 * ext/fiddle/closure.c: Documentation for Fiddle
* ext/fiddle/pointer.c: ditto
* ext/fiddle/function.c: ditto
* ext/fiddle/lib/fiddle.rb: ditto
* ext/fiddle/fiddle.c: ditto
* ext/fiddle/handle.c: ditto



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 23:26:07 +00:00
tenderlove c1fb6a82dc * ext/fiddle/handle.c: Make Fiddle independent of DL, copy DL::Handle
to Fiddle::Handle.
* ext/fiddle/pointer.c: Make Fiddle independent of DL, copy
  DL::Pointer to Fiddle::Pointer.
* test/fiddle/test_func.rb: relevent tests
* test/fiddle/test_handle.rb: ditto
* test/fiddle/test_pointer.rb: ditto
* ext/dl/lib/dl/struct.rb: use Fiddle::Pointer if available
* ext/fiddle/extconf.rb: check for dlfcn.h
* ext/fiddle/fiddle.c: add constants for sizeof() things
* ext/fiddle/fiddle.h: include dlfcn.h
* ext/fiddle/function.c: expose a C function for creating new
  Fiddle::Function objects.
* ext/fiddle/lib/fiddle.rb: include constants for dl backwards compat
* ext/fiddle/lib/fiddle/function.rb: read the pointer from the
  function for dl backwards compat.
* test/dl/test_callback.rb: check the addresses of the pointers rather
  than their types.
* test/fiddle/helper.rb: remove dependency on dl
* test/fiddle/test_closure.rb: ditto
* test/fiddle/test_fiddle.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 19:54:50 +00:00
tenderlove 1eac1cb21e reverting r37881
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 05:59:34 +00:00
drbrain 1c279a7d27 * lib/rdoc*: Updated to RDoc 4.0 (pre-release)
* bin/rdoc:  ditto
* test/rdoc:  ditto
* NEWS:  Updated with RDoc 4.0 information


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 04:28:14 +00:00
tenderlove ab2a7a9346 * ext/fiddle/handle.c: Make Fiddle independent of DL, copy DL::Handle
to Fiddle::Handle.
* ext/fiddle/pointer.c: Make Fiddle independent of DL, copy
  DL::Pointer to Fiddle::Pointer.
* test/fiddle/test_func.rb: relevent tests
* test/fiddle/test_handle.rb: ditto
* test/fiddle/test_pointer.rb: ditto
* ext/dl/lib/dl/struct.rb: use Fiddle::Pointer if available
* ext/fiddle/extconf.rb: check for dlfcn.h
* ext/fiddle/fiddle.c: add constants for sizeof() things
* ext/fiddle/fiddle.h: include dlfcn.h
* ext/fiddle/function.c: expose a C function for creating new
  Fiddle::Function objects.
* ext/fiddle/lib/fiddle.rb: include constants for dl backwards compat
* ext/fiddle/lib/fiddle/function.rb: read the pointer from the
  function for dl backwards compat.
* test/dl/test_callback.rb: check the addresses of the pointers rather
  than their types.
* test/fiddle/helper.rb: remove dependency on dl
* test/fiddle/test_closure.rb: ditto
* test/fiddle/test_fiddle.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 01:38:41 +00:00
nobu 3677a68d81 extmk.rb: fix mixing mkmf.log
* ext/extmk.rb (extmake): close mkmf.log for each libraries so that
  failure messages are not mixed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 00:59:19 +00:00
nobu f0a229b69b extconf.rb: git rid of post-1.8 feature
* ext/digest/*/extconf.rb, ext/openssl/extconf.rb: get git rid of
  post-1.8 feature require_relative for cross compilation.
  [ruby-core:50160] [Bug #7439]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-27 00:58:52 +00:00
nobu 943b664eea extmk.rb: git rid of post-1.8 features
* ext/extmk.rb (extmake): git rid of post-1.8 features for cross
  compilation.  [ruby-core:50160] [Bug #7439]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-26 19:12:55 +00:00
naruse e6c2ffa981 * ext/nkf/nkf-utf8/nkf.c (unicode_iconv_combine): returning flags are
nkf_char.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-24 12:09:39 +00:00
zzak d2ddd30a3f * ext/socket/ipsocket.c (IPSocket#peeraddr): Fix example
[ruby-core:46429] [Bug #6732]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-23 01:46:51 +00:00
naruse 59c41661a7 * ext/nkf/nkf-utf8: Merge b0a6577a521d1bba5e19853f95d5c4b9be1072b5.
Support JIS X 0213 and some bugfixes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-22 08:47:30 +00:00
nobu 45faa57b49 wait.c: wait_readable
* ext/io/wait/wait.c (io_wait_readable): add alias wait_readable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-21 13:53:02 +00:00
nobu e786aa711d io/wait: add IO#wait_writable method
* ext/io/wait/wait.c (io_wait_writable): this is easier to use than
  IO.select for a single IO object and is immune to the
  limitations/innefficiency of select() on platforms where poll/ppoll
  is available.  patched by Eric Wong.  [Feature #4646]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-21 13:40:00 +00:00
kazu 2562560c87 fix indent
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 12:39:54 +00:00
tenderlove 653b0bcbaf * ext/psych/lib/psych/visitors/yaml_tree.rb: use literal YAML style
when emitting multi-line strings. Thanks @atambo

* test/psych/test_yaml.rb: test for change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-17 03:15:54 +00:00
tenderlove 24c6a7c368 * ext/psych/lib/psych/scalar_scanner.rb: avoid raising exceptions when
parsing Floats and Integers. Thanks riffraff [ruby-core:44426]
* test/psych/test_numeric.rb: associated test

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-17 03:11:22 +00:00
tenderlove 4e57f4e182 * ext/psych/lib/psych/core_ext.rb: move Kernel#y so that it can
manually be required as 'psych/y'.

* ext/psych/lib/psych/y.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-17 02:28:48 +00:00
tadf 8defbc442b * ext/date/date_parse.c (date__parse): revised the tight parser
(about handling of apostrophes).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-11 09:45:44 +00:00
tadf b04aa4d2cf * ext/date/date_parse.c: edited about era.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-10 09:21:41 +00:00
zzak 50c859715d * ext/bigdecimal/bigdecimal.c:
Documentation for BigDecimal
  Based on a patch from Vincent Batts
  [ruby-core:49047] [Bug #7305]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-09 07:03:13 +00:00
knu 316947eaa4 * ext/curses/view.rb: Do not fail if the file to view is shorter
than the screen height.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-07 15:36:14 +00:00
luislavena 95cd5aaa48 Recognize zlibwapi as linking library
* ext/zlib/extconf.rb: Recognize zlibwapi as linking library.
  Patch by Daniel Berger.

  [ruby-core:44979] [Feature #6421]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-06 18:50:53 +00:00
shirosaki 9bb55f7633 * ext/dl/win32/lib/Win32API.rb (Win32API#call): use 64bit pointer for x64
Windows. This would fix
  TestSecureRandom#test_s_random_bytes_without_openssl error.
  [ruby-core:47451] [Bug #6990]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-05 14:00:41 +00:00
tadf 64bb9749af * ext/date/date_core.c: modified doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-03 13:39:54 +00:00
tadf 0ae90522a6 * ext/date/date_parse.c (parse_eu): should capture apostrophe too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-03 05:59:08 +00:00
tadf d55aa2bf67 * ext/date/date_parse.c (date__parse): revised the tight parser.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-03 05:47:32 +00:00
mrkn a3e5a86596 * ext/bigdecimal/bigdecimal.c (BigDecimal_new),
test/bigdecimal/test_bigdecimal.rb:
  Fix exception message of BigDecimal constructor with a Float.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-01 13:04:04 +00:00
mrkn 2e6b5ece95 * ext/bigdecimal/bigdecimal.c (BigDecimal_add),
test/bigdecimal/test_bigdecimal.rb:
  need to specify precision for converting Rational and Float.
  [ruby-core:48045] [Bug #7176]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-01 13:03:53 +00:00
tenderlove 4b1df2ae45 * ext/dl/lib/dl/struct.rb: fix strange require order. [ruby-dev:45702]
* ext/dl/lib/dl/value.rb: ditto

* test/dl/test_c_struct_entry.rb: remove strange require order from
  tests.

* test/dl/test_c_union_entity.rb: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-30 17:54:34 +00:00
nobu 56f9574de8 stringio.c: close separatedly
* ext/stringio/stringio.c (strio_close): close separatedly per each
  instances, as well as IO.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-29 09:23:02 +00:00
tenderlove 0f9307914b * ext/psych/lib/psych/handlers/recorder.rb: added a class for
recording YAML parse and emit events.

* ext/psych/lib/psych/handler.rb: adding a list of events so that
  handler classes can more easily be meta-programmed.

* test/psych/handlers/test_recorder.rb: tests for the change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-29 01:23:54 +00:00
tadf 9f773625e5 * ext/date/date_parse.c (iso8601_{ext,bas}_time): should not match
empty string.
- この行以下は無視されます --

M    ChangeLog
M    ext/date/date_parse.c
M    test/date/test_date_parse.rb


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-28 10:16:02 +00:00
tadf b4c6d6a3a5 * ext/date/date_parse.c (date__parse): revised the tight parser.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-28 09:53:08 +00:00
tenderlove f8d34b2a75 * ext/psych/lib/psych/visitors/yaml_tree.rb: `tree` should return the
same thing on every call.

* test/psych/visitors/test_yaml_tree.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-28 01:13:09 +00:00
tenderlove dbe6250af2 * ext/psych/lib/psych/visitors/yaml_tree.rb: YAML Tree object should
be able to take an emitter object as it's output.

* test/psych/visitors/test_yaml_tree.rb: related test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-28 01:06:09 +00:00
nobu e59e5e90c0 objspace.c: enum ruby_value_type
* ext/objspace/objspace.c (type2sym, count_objects_size): use enum
  instead of size_t which may be larger than actual values.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24 09:49:18 +00:00
ko1 04c177e277 * ext/objspace/objspace.c (reachable_object_from_i): change data
structure of the result of reachable objects. Keys of table
  contains object_id of each reachable objects. Value of table
  is an object itself or an instance of InternalObjectWrapper.
  To avoid duplication, we use st_table and object_id keys.
* ext/objspace/objspace.c (type2sym): bug fix.
  Should use `i' instead of `type'.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24 03:00:39 +00:00
ko1 6cbd18d7ef * ext/objspace/objspace.c (Init_objspace): add a new method
`ObjectSpace::InternalObjectWrapper#internal_object_id' which returns
  an object id of a wrapped internal object.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24 01:21:13 +00:00
ko1 6c6dece7f1 * ext/objspace/objspace.c (ObjectSpace.reachable_objects_from):
internal object support.
  If given object `obj' has references to internal objects
  (such as T_NODE objects), then this method returns instances of
  `ObjectSpace::InternalObjectWrapper' instead of that internal objects.
  This instance contains a refereance to an internal object and you can
  check the type of internal object using
  `ObjectSpace::InternalObjectWrapper#type' method.
  Rdoc of `InternalObjectWrapper' is not prepared yet.
* gc.c (rb_objspace_reachable_objects_from), gc.h: change
  an interface of 'rb_objspace_reachable_objects_from()'
* gc.c, gc.h: add two APIs
  - rb_objspace_markable_object_p(obj): check markable or not.
  - rb_objspace_internal_object_p(obj): check internal or not.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-24 00:04:56 +00:00
tenderlove 3c73f44c7f * ext/psych/parser.c: just get the constant defined in Ruby.
* ext/psych/lib/psych/syntax_error.rb: Psych::SyntaxError now inherits
  from StandardError rather than SyntaxError.  Thanks Eric Hodel!

* test/psych/test_exception.rb: tests for change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 21:25:02 +00:00
tenderlove 6c6d4568e8 * ext/psych/lib/psych/scalar_scanner.rb: Cache symbols while
tokenizing.  Thanks Kevin Menard!

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 21:24:50 +00:00
tenderlove ca0cf16734 * ext/psych/lib/psych/scalar_scanner.rb: Updated the RegExp to catch
Strings earlier in the tokenization process.  Thanks Kevin Menard!

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 21:24:36 +00:00
tenderlove b3fb872d9d * ext/psych/lib/psych/visitors/to_ruby.rb: Handle nil tags specially
to avoid slow method_missing calls.  Thanks Kevin Menard!

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 21:14:08 +00:00
tenderlove ec3056ae22 * ext/psych/lib/psych/scalar_scanner.rb: Ignore bad timestamps. If
something looks like a timestamp but has an invalid component, treat
  it as a string instead of throwing an ArgumentError.
  Thanks Rhett Sutphin!

* test/psych/test_scalar_scanner.rb: appropriate tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37288 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 21:09:56 +00:00
tenderlove c05952c6a1 * ext/psych/lib/psych/scalar_scanner.rb: Fix scalar_scanner to
understand strings starting with an underscore and containing only
  digits.  Thanks Kelley Reynolds.

* test/psych/test_scalar_scanner.rb: test for fix

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 21:06:25 +00:00
tenderlove b00362eb3e * ext/psych/lib/psych.rb: Changed comment in psych.rb to update new
home page for libyaml.  Thanks to Carolyn Ann.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 21:02:16 +00:00
naruse 900b62a2e9 Supress warnings: unused variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-22 00:47:50 +00:00
tadf 2cbb4481bd * ext/date/date_parse.c (date__parse): uses more tight parser if
defined TIGHT_PARSER.  now inactivated; because it introduces
	  incompatibilities and it is a bit slow.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-21 09:41:25 +00:00
nari c3a46d6aca * include/ruby/ruby.h: add C APIs.
VALUE rb_newobj_of(VALUE klass, VALUE flags)
  #define NEWOBJ_OF(obj,type,klass,flags)
  These allow to change a allocation strategy depending on klass
  or flags.

* gc.c: ditto

* array.c: use new C API.
* bignum.c: ditto
* class.c: ditto
* complex.c: ditto
* ext/socket/ancdata.c: ditto
* ext/socket/option.c: ditto
* hash.c: ditto
* io.c: ditto
* marshal.c: ditto
* numeric.c: ditto
* object.c: ditto
* random.c: ditto
* range.c: ditto
* rational.c: ditto
* re.c: ditto
* string.c: ditto
* struct.c: ditto
  [Feature #7177][Feature #7047]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-20 06:57:51 +00:00
zzak f1e488e524 * ext/socket/socket.c: Documentation for Socket
Based on a patch by David Albert
  [Bug #7105] [ruby-core:47828]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-20 03:51:33 +00:00
shirosaki 14d59c122f extmk.rb: fix mingw make failure with make -jN
* common.mk (WPROGRAM): need same dependencies as PROGRAM.

* cygwin/GNUmakefile.in (uncommon.mk): move include position
  below WPROGRAM definition to be defined in uncommon.mk.

* ext/extmk.rb (all, static): fix make rubyw.exe failure with make -jN.
  If make of ruby.exe and rubyw.exe run in parallel, link dll and link
  exe run in parallel, which causes link failure on mingw. To fix this,
  we make ruby.exe and rubyw.exe in one make process.
  [ruby-core:48007] [Bug #7165]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-17 12:20:57 +00:00
nagachika f21ac99ef9 * ext/zlib/zlib.c (zstream_run_func): don't call inflate() when
z->stream.avail_in == 0. it return Z_BUF_ERROR.
  but deflate() could be called with z->stream->avail_in == 0 because
  it has hidden buffer in z->stream->state (opaque structure).
  fix for gem install error. [ruby-dev:46149] [Bug #7040]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-08 16:40:19 +00:00
ko1 e03d6d9eb8 * ext/objspace/objspace.c: add ObjectSpace#reachable_objects_from.
This method returns an array of objects referenced by given object.
  If given object is special objects such as true/false/nil/Fixnum etc
  then it returns nil. See rdoc for details.
  [ruby-core:39772]
* test/objspace/test_objspace.rb: add a test for this method.
* gc.c: add rb_objspace_reachable_objects_from().
  To make this function, add several member `mark_func_data'
  to rb_objspace_t.  If mark_func_data is not null, then
  gc_mark() calls mark_func_data::mark_func.
* gc.h: export rb_objspace_reachable_objects_from().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-05 08:14:09 +00:00
nobu e2220d19e1 depend: missing dependency
* ext/date/depend: all source files need ruby.h.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-05 00:26:43 +00:00
nobu 396903d384 depend: dependency
* ext/json/generator/depend: fix missing dependency.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03 07:33:24 +00:00
drbrain 48af304cf7 * ext/openssl/ossl_x509store.c (ossl_x509store_add_file): Added
documentation
* ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
  ditto
* ext/openssl/ossl_x509store.c (ossl_x509store_add_cert):  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-02 19:36:26 +00:00
ko1 e3990633cb * insns.def (opt_checkenv): remove unused instruction `opt_checkenv'.
* compile.c (iseq_compile_each): ditto.
* node.h: remove unused node `NODE_OPTBLOCK'.
* ext/objspace/objspace.c, gc.c (gc_mark_children): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28 06:44:24 +00:00
knu e0bff65092 * ext/syslog/lib/syslog/logger.rb: add a formatter to the
Syslog::Logger object. [Bug #7065]
* test/syslog/test_syslog_logger.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-27 09:20:58 +00:00
zzak e4ac8fa282 * ext/ripper/lib/ripper.rb:
Match sample output to Ripper.sexp from current trunk version.
  [Bug #6929]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-21 22:15:21 +00:00
zzak cca61dafe8 * ext/ripper/lib/ripper.rb: Documentation for Ripper.
+:void_stmt+ is meaningless
  [Bug #6929] [ruby-core:47507]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-19 22:17:16 +00:00
naruse e8854f8c62 * ext/openssl/ossl_ssl.c (ossl_sslctx_attrs): add npn_select_db to
suppress warning: instance variable @npn_select_cb not initialized

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-18 08:52:40 +00:00
naruse 3d42b23557 * ext/nkf/nkf-utf8/nkf.c: Merge upstream: 50a383c84.
[ruby-dev:46128] [Bug #7005]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-14 17:26:39 +00:00
naruse 1aab4196fa * ext/nkf/nkf.c (rb_nkf_convert): suppress warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-14 16:07:49 +00:00
zzak 8f0d172f58 * ext/ripper/lib/ripper.rb: Documentation for Ripper.
* ext/ripper/lib/ripper/lexer.rb: ditto.
* ext/ripper/lib/ripper/sexp.rb: ditto.
* ext/ripper/lib/ripper/filter.rb: ditto.
* ext/ripper/lib/ripper/core.rb: ditto.
  [Bug #6929] [ruby-core:47309]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-12 23:04:41 +00:00
nobu 857ec7118f pathname.c: suppress -Wcomment warning
* ext/pathname/pathname.c (path_s_glob): get rid of "/*" within block
  comment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-12 14:16:16 +00:00
zzak b5c38622b1 * ext/pathname/lib/pathname.rb: Documentation for Pathname.
* ext/pathname/pathname.c: ditto.
  [Bug #6947] [ruby-core:47354]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-12 13:54:08 +00:00
usa 91987f6b04 * ext/socket/{basicksocket,init,udpsocket}.c: revert some parts of
r36944.  it breaks mswin/mingw ruby and brought into many many
  crashes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-10 01:41:59 +00:00
kosaki 84c77c1520 * ext/socket/basicsocket.c (rsock_bsock_send):
avoid unnecessary select() calls before doing I/O
  Patch by Eric Wong. [Feature #4538] [ruby-core:35586]
* ext/socket/init.c (rsock_s_recvfrom): ditto.
* ext/socket/init.c (rsock_s_accept): ditto.
* ext/socket/udpsocket.c (udp_send): ditto.
* io.c (io_fflush): ditto.
* io.c (io_binwrite): ditto.
* io.c (rb_io_syswrite): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-09 17:29:12 +00:00
nagachika 9dd9041fcf * ext/extmk.rb: revert r36468. replacing NUL character is not necessary after
r36918,

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-07 14:34:40 +00:00
nobu d0d68df7d0 mkmf.rb: fix splitting options with an argument
* ext/extmk.rb (extmake), lib/mkmf.rb (have_framework): fix splitting
  options with an argument, not using NUL as special character.
  [ruby-core:47447] [Bug #6987]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-06 16:21:57 +00:00
nobu af6c038b23 remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-04 00:57:31 +00:00
nobu a4ce3ab4fd remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-03 03:22:22 +00:00
emboss e29819df6e * ext/openssl/extconf.rb: Detect OpenSSL_FIPS macro
ext/openssl/ossl.c: Expose OpenSSL::OPENSSL_FIPS constant to
  indicate whether OpenSSL runs in FIPS mode.
  test/openssl/test_pkey_dh.rb: Generate 256 bit keys for
  non-FIPS installations to improve test performance (e.g. for
  rubyci).
  test/openssl/utils.rb: Replace DSS1 as certificate signature
  digest with SHA1 for FIPS installations when using DSA by
  introducing TestUtils::DSA_SIGNATURE_DIGEST.
  test/openssl/test_x509cert.rb: 
  test/openssl/test_x509crl.rb:
  test/openssl/test_x509req.rb: Use DSA_SIGNATURE_DIGEST
  NEWS: Introduce OpenSSL::OPENSSL_FIPS
  
  These changes allow running the OpenSSL tests in FIPS mode
  while keeping a high performance for non-FIPS installations.
  Introduction of OpenSSL::OPENSSL_FIPS allows for applications
  to react to special requirements when using OpenSSL in FIPS mode.
  [Feature #6946] [ruby-core:47345]
- Diese und die folgenden Zeilen werden ignoriert --

M    ext/openssl/extconf.rb
M    ext/openssl/ossl.c
M    NEWS
M    ChangeLog
M    test/openssl/utils.rb
M    test/openssl/test_x509crl.rb
M    test/openssl/test_x509req.rb
M    test/openssl/test_x509cert.rb
M    test/openssl/test_pkey_dh.rb


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-03 01:14:26 +00:00
emboss 25e6db3e3c * ext/openssl/extconf.rb: Check existence of OPENSSL_NPN_NEGOTIATED.
ext/ossl_ssl.c: Support Next Protocol Negotiation. Protocols to be
  advertised by the server can be set in the SSLContext by using
  SSLContext#npn_protocols=, protocol selection on the client is
  supported by providing a selection callback with
  SSLContext#npn_select_cb. The protocol that was finally negotiated
  is available through SSL#npn_protocol.
  test/openssl/test_ssl.rb: Add tests for Next Protocol Negotiation.
  NEWS: add news about NPN support.
  [Feature #6503] [ruby-core:45272]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31 09:47:36 +00:00
usa 1d1130eea1 * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use self's sign to
determine 0.0 and Inf's sign instead of internal double value's.
  Reported by phasis68 (Heesob Park) at [ruby-core:47381] [Bug #6955]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31 05:34:08 +00:00
nobu 470c941ce5 id.h: independent from parse.h
* template/id.h.tmpl, tool/id2token.rb: make id.h independent from
  parse.h, and make parse.c dependent on it instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31 05:31:20 +00:00
nobu 30fbd739a1 fix dependency
* ext/json/parser/depend: fix dependency for error that rb_float_new
  is not found.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-31 04:58:18 +00:00
nobu d7ca01a73a bigdecimal.c: check underflow
* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): check underflow since
  strtod() sets errno to ERANGE at underflow too.  [ruby-core:47342]
  [Bug #6944]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-30 07:17:56 +00:00
ko1 3721fb0106 * ext/date/depend: add dependency to $(ruby_headers).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-23 07:03:46 +00:00
tenderlove 5571c7315e * ext/syck: removed. Fixes [ruby-core:43360]
* test/syck: removed.

* lib/yaml.rb: only require psych, show a warning if people try to set
  the engine to syck.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-22 17:43:16 +00:00
tadf c069246931 * ext/date/date_core.c: [ruby-core:47266].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-22 10:47:05 +00:00
tadf 280681f40c * ext/date/date_core.c: [ruby-core:47226].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-22 10:42:15 +00:00
yugui e782fb8eea * common.mk (vm_backtrace.o): Added missing dependencies.
* ext/nkf/depend (nkf.o): ditto.

* ext/ripper/depend (ripper.o) ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-22 01:11:30 +00:00
usa 3401fc5984 * ext/dl/lib/dl/func.rb (DL::Function#bind): fixes an error in
test/dl/test_import.rb (DL::TestImport#test_carried_function)
  introduced by r36718.
  the instance of the anonymous class which wraps the block should have
  same methods and instance variables of self.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-21 06:53:40 +00:00
ryan ed720d5505 Fixed warning for implicit conversion from size_t to int
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-20 23:59:35 +00:00
usa 4a097d2e3e * ext/dl/lib/dl/func.rb (DL::Function#bind): allow to return/break from
the callback method. (Fiddle already allows it.)
  [Bug #6389] [ruby-dev:45604]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-17 03:42:19 +00:00
ktsj 9564e9bd23 * vm.c (invoke_block_from_c): fix unintentional block passing.
[ruby-dev:45071] [Bug #5832]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-12 03:04:42 +00:00
naruse a996b48515 * ext/readline/readline.c (Init_readline): rl_catch_signals=0 returns
back. Without this, on FreeBSD9 and readline 6.2 irb can't catch ^C.
  [Bug #5423]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-07 11:22:04 +00:00
nobu 13527efd59 bigdecimal.c: fix format specifier
* ext/bigdecimal/bigdecimal.c (BigMath_s_log): fix format specifier.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-05 15:40:56 +00:00
tadf ab67ba64ca * ext/date/date_{core,strftime}.c: [ruby-core:46990].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-04 21:57:48 +00:00
emboss df05bd2c82 * ext/openssl/lib/openssl/digest.rb
test/openssl/test_digest.rb: Add Digest module function to OpenSSL
  module and test it. Patch provided by Eric Hodel.
  [ruby-core:46908][Feature #6819]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-02 01:58:49 +00:00
eregon 61b624d149 ext/digest/digest.c (hexencode_str_new): return an ASCII string
* test/digest: tests for all kind of digests encodings
  [ruby-core:46792][Bug #6799]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-01 13:30:51 +00:00
tenderlove 30d957fc61 * ext/psych/lib/psych.rb: updated to released version.
* ext/psych/psych.gemspec: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-31 01:37:06 +00:00
nobu 240dd36ffb option.c: mingw64 only
* ext/socket/option.c (inet_ntop): something weird only on mingw64.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-29 15:25:29 +00:00
nobu dc40114781 option.c: use rb_w32_inet_ntop
* ext/socket/option.c (inet_ntop): use rb_w32_inet_ntop, instead of
  inet_ntop directly, which is unavailable on older version Windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-29 14:57:30 +00:00
nobu f9368f65b1 win32.c: rb_w32_inet_ntop should be const
* win32/win32.c (rb_w32_inet_ntop): type should be const.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-29 14:56:52 +00:00
nobu 485181e4f7 ext/socket: suppress warnings on mingw64
* ext/socket/ancdata.c (nogvl_sendmsg_func): explicitly cast via VALUE
  to suppress a warning on mingw64.
* ext/socket/option.c: declare inet_ntop() for mingw64 which has the
  function but lacks arpa/inet.h.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-28 02:14:23 +00:00
kanemoto 48cb947793 avoid compilation error on AIX by -ansi -std=iso9899:199409 (r36038). [ruby-core:46744] [Bug #6791].
This issue is fixed in upper stream as issue #142. (https://github.com/flori/json/issues/142)



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-25 22:26:41 +00:00
tenderlove 91bd6e711d * parse.y: added symbols and qsymbols productions for %i and %I
support. %i{ .. } returns a list of symbols without interpolation,
  %I{ .. } returns a list of symbols with interpolation.  Thanks to
  Josh Susser for inspiration of this feature. [Feature #4985]

* ext/ripper/eventids2.c: added ripper events for %i and %I.

* test/ripper/test_parser_events.rb: ripper tests

* test/ripper/test_scanner_events.rb: ditto

* test/ruby/test_array.rb: test for %i and %I behavior

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-24 18:10:35 +00:00
drbrain 3efea48a70 * ext/socket/raddrinfo.c (addrinfo_ipv6_unique_local_p): Added
Addrinfo#ipv6_unique_local? to detect RFC 4193 unique local
  addresses.  Part of #6692
* ext/socket/rubysocket.h:  Add IN6_IS_ADDR_UNIQUE_LOCAL macro if
  missing.
* test/socket/test_addrinfo.rb:  Test for ipv6_unqiue_local?


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-20 00:32:35 +00:00
nobu f0810814bd extmk.rb: hack for -framework
* ext/extmk.rb (mf.macro): replace NULs with spaces also in exts.mk
  which is used when dissable-shared.  fix r36437.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-19 12:21:49 +00:00
usa 2574b80d83 * ext/socket/init.c (rsock_init_sock): need to update max fd on all
platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-19 05:20:08 +00:00
usa 8e66cbccb7 * ext/socket/extconf.rb: now enable IPv6 by default on mswin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-19 04:27:59 +00:00
tenderlove 1ec93d92c7 * ext/psych/emitter.c (initialize): allow a configuration object to be
passed to the constructor so that mutation isn't required after
  instantiation.

* ext/psych/lib/psych/handler.rb: add configuration object

* ext/psych/lib/psych/visitors/emitter.rb: use configuration object if
  extra configuration is present.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-19 00:36:42 +00:00
naruse 7624e5d36c * ext/dbm/dbm.c (fdbm_empty_p): fix wrong condtion introduced in r36438.
* ext/sdbm/init.c (fsdbm_empty_p): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 14:09:59 +00:00
nobu f9c014d008 empty_p: optimize and warnings
* ext/dbm/dbm.c (fdbm_empty_p): not empty if first key exists.
  suppress warnngs by gcc 4.7 -Wstrict-overflow.
* ext/sdbm/init.c (fsdbm_empty_p): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 07:44:17 +00:00
nobu 5a03c25690 mkmf.rb: hack for -framework
* lib/mkmf.rb (have_framework): get rid of separating -framework
  option and its argument and dealing with the argument as a library
  or an object name.  if $LDFLAGS were an array...


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 07:17:43 +00:00
shugo 5d743d7662 * ext/curses/extconf.rb: support PDCurses. patched by Luis Lavena.
[ruby-core:46485] [Feature #6735]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 07:11:20 +00:00
tenderlove 7d1f53e782 * ext/psych/lib/psych/visitors/to_ruby.rb: strings with YAML anchors
are properly referenced. Patched by Joe Rafaniello via Github:
    https://github.com/tenderlove/psych/pull/69
* ext/psych/lib/psych/visitors/yaml_tree.rb: ditto
* test/psych/test_alias_and_anchor.rb: test for change

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-16 19:00:59 +00:00
ayumin e985c49e64 * ext/readline/readline.c: fixed docs. [Bug #6740][ruby-core:46501]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-16 13:08:04 +00:00
nobu c9e4da2afc enc/encinit.c for static-linked-ext
* ext/extmk.rb: append ENCOBJS to DLDOBJS but not EXTSOLIBS which is
  not a target, to compile enc/encinit.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-11 08:36:41 +00:00
usa 04051396fd * ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): nonstatic initializer
of an aggregate type is a C99ism.

* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): get rid of VC++
  warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-11 03:46:37 +00:00
nobu 7bca2f031a get rid of warnings
* io.c (sysopen_func, rb_sysopen_internal): cast through VALUE to get
  rid of warnings.  fixup of r36355.
* process.c (rb_waitpid_blocking, rb_waitpid): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-11 03:17:35 +00:00
drbrain 3cf7d1b57e * ext/zlib/zlib.c: Added streaming support to inflate processing.
This allows zlib streams to be processed without huge memory growth.
  [Feature #6612]
* NEWS:  ditto
* ext/zlib/zlib.c (zstream_expand_buffer):  Uses rb_yield when a block
  is given for streaming support.  Refactored to use
  zstream_expand_buffer_into to remove duplicate code.
* ext/zlib/zlib.c (zstream_expand_buffer_protect):  Added wrapper
  function to pass jump state back through GVL-free section to allow
  zstream clean-up before terminating the ruby call.
* ext/zlib/zlib.c (zstream_expand_buffer_without_gvl):  Acquire GVL to
  yield processed chunk of output stream.
* ext/zlib/zlib.c (zstream_detach_buffer):  When a block is given,
  returns Qnil mid-stream and yields the output buffer at the end of
  the stream.
* test/zlib/test_zlib.rb:  Updated tests


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-10 18:28:40 +00:00
nobu c51a826764 rb_thread_call_without_gvl
* include/ruby/thread.h: new header file for thread stuff.
* thread.c (rb_thread_call_without_gvl): export.  [Feature#4328]
  returns void* instead of VALUE.  [Feature #5543]
* thread.c (rb_thread_blocking_region): deprecate.  [ruby-core:46295]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-10 13:57:11 +00:00
drbrain 1a853390ee * ext/zlib/zlib.c: Revert r36349. Added streaming support to inflate
processing.  rb_block_given_p() is not callable without the GVL.
* ext/zlib/extconf.rb:  ditto
* NEWS:  ditto
* test/zlib/test_zlib.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-10 03:51:25 +00:00
drbrain 3e419e6c4a * ext/zlib/zlib.c: Added streaming support to inflate processing.
This allows zlib streams to be processed without huge memory growth.
  [Feature #6612]
* NEWS:  ditto
* ext/zlib/zlib.c (zstream_expand_buffer):  Uses rb_yield when a block
  is given for streaming support.  Refactored to use
  zstream_expand_buffer_into to remove duplicate code.
* ext/zlib/zlib.c (zstream_expand_buffer_protect):  Added wrapper
  function to pass jump state back through GVL-free section to allow
  zstream clean-up before terminating the ruby call.
* ext/zlib/zlib.c (zstream_expand_buffer_without_gvl):  Acquire GVL to
  yield processed chunk of output stream.
* ext/zlib/zlib.c (zstream_detach_buffer):  When a block is given,
  returns Qnil mid-stream and yields the output buffer at the end of
  the stream.
* ext/zlib/extconf.rb:  Update INCFLAGS to find internal.h for
  rb_thread_call_with_gvl
* test/zlib/test_zlib.rb:  Updated tests


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-10 00:04:47 +00:00
kosaki 3e1d8aab17 * dln.c: Simplify and make consistent an ifdef for Mac OS X.
* ext/socket/rubysocket.h: ditto.
* ext/tk/stubs.c: ditto.
* io.c: ditto.
* process.c: ditto.
* signal.c: ditto.
* vm_dump.c: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-09 15:52:49 +00:00
nobu 9a8a2fd294 ext/zlib/zlib.c: initialize return value
* ext/zlib/zlib.c (zstream_run_func): initialize the return value,
  interrupt flag may set before starting loop.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-09 04:35:53 +00:00
drbrain 7182c0005c * ext/zlib/zlib.c (zstream_expand_buffer_without_gvl): Use
ruby_xrealloc() to avoid crash with CALC_EXACT_MALLOC_SIZE.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-05 19:06:18 +00:00
drbrain 1884f1c0ab * ext/zlib/zlib.c (zstream_run_func): Fix bug that caused early exit
of GVL-free loop.  [Feature #6615]
* ext/zlib/zlib.c:  Fix style to match existing functions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-03 05:52:22 +00:00
usa 1f23350194 * ext/dl/cfunc.c (rb_dlcfunc_call): also needed the workaround for VC8
for x64.  [ruby-dev:45875] [Bug #6676]
  reported by aves_ramphastos (Seigo Ishigane)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-03 03:10:02 +00:00
drbrain 1138756967 * ext/zlib/zlib.c (zstream_detach_buffer): Refactored tainting of
output string, moving it from the callee to zstream_detach_buffer.
* ext/zlib/zlib.c (rb_zstream_finish):  ditto
* ext/zlib/zlib.c (rb_zstream_flush_next_out):  ditto
* ext/zlib/zlib.c (rb_deflate_deflate):  ditto
* ext/zlib/zlib.c (rb_deflate_flush):  ditto
* ext/zlib/zlib.c (rb_inflate_inflate):  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-03 03:09:30 +00:00
drbrain cda2bf5568 * ext/zlib/zlib.c: Restored the comment explaining the choice of
buffer expansion size.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-02 21:15:47 +00:00
drbrain 802c468fc6 * ext/zlib/zlib.c (zstream_run): Process zlib streams without GVL.
[Feature #6615]
* NEWS:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-02 21:03:15 +00:00
tadf bd52bed97b * ext/date/date_core.c: [ruby-core:46058].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-01 20:56:50 +00:00
tadf c8cde4e2be * ext/date/date_core.c (d_lite_marshal_load): accepts old dump.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-01 20:37:38 +00:00
ktsj fb3c4a2d18 * ext/zlib/zlib.c: cosmetic changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-01 13:32:32 +00:00
nobu 28cb8f5d20 fix null m_tbl
* ext/objspace/objspace.c (memsize_of): m_tbl in prepended
  class/module is NULL.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-27 11:36:15 +00:00
akr 3eafc1660f * process.c: use the name "eargp" for struct rb_execarg variables
consistently except for saving process attributes. 

* io.c: ditto.

* ext/pty/pty.c: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-22 23:09:16 +00:00
akr d73d3a743b * process.c (rb_execarg_fixup): take a VALUE argument instead of
struct rb_execarg.

* internal.h (rb_execarg_fixup): follow the definition change.

* io.c (pipe_open): follow rb_execarg_fixup change.

* ext/pty/pty.c (establishShell): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-20 21:25:20 +00:00
akr b60713de73 * internal.h (struct rb_execarg) moved and renamed from
struct rb_exec_arg in intern.h.

* include/ruby/intern.h (struct rb_exec_arg): refer Data object which
  contains struct rb_execarg.

* process.c: use struct rb_execarg instead of struct rb_exec_arg
  except functions declared in intern.h.
  (rb_exec_arg_addopt): extract a pointer to struct rb_execarg from
  struct rb_exec_arg.
  (rb_exec_arg_init): ditto.
  (rb_exec_arg_fixup): ditto.
  (rb_run_exec_options_err): ditto.
  (rb_run_exec_options): ditto.
  (rb_exec_err): ditto.
  (rb_exec): ditto.

* io.c: use struct rb_execarg instead of struct rb_exec_arg.

* ext/pty/pty.c: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-20 11:46:50 +00:00
akr 826f98e688 * internal.h (rb_execarg_new): declared.
(rb_execarg_get): ditto.

* process.c (mark_exec_arg): new function.
  (free_exec_arg): ditto.
  (memsize_exec_arg): ditto.
  (exec_arg_data_type): defined.
  (rb_execarg_new): new function.
  (rb_execarg_get): ditto.
  (rb_f_exec): use rb_execarg_new.
  (rb_spawn_internal): ditto.
  (rb_f_spawn): ditto.

* io.c (pipe_open_v): use rb_execarg_new.
  (pipe_open_s): ditto.

* ext/pty/pty.c (establishShell): use rb_execarg_new.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-20 10:31:02 +00:00
nobu ab9560c953 ext/readline/extconf.rb: no global names
* ext/readline/extconf.rb (readline): get rid of polluting global
  namespace.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-19 09:21:58 +00:00
naruse 5f88399018 * ext/readline/readline.c (Init_readline): don't set 0 to
rl_catch_signals and rl_catch_sigwinch. [Bug #5423]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-19 03:00:46 +00:00
naruse e47c4e38a8 * ext/readline/readline.c (readline_s_get_special_prefixes): suppress
warning: unitinialized instance variable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-19 02:58:43 +00:00
naruse d998ba1c3c * ext/readline/readline.c (readline_getc): fix editline compatibility
broken by r36123. [Bug #6601]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-19 02:58:40 +00:00
nobu bcc4c40853 unreachable
* ext/-test-/exception/enc_raise.c (enc_raise): unreachable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-18 09:13:31 +00:00
nobu e2ad92a075 ext/readline/readline.c: [Bug #6601]
* ext/readline/readline.c (readline_getc): deal with ESC just followed
  by ASCII as meta prefix in incremental search mode.  based on the
  patch from rctay (Tay Ray Chuan) at [ruby-core:45682].  [Bug #6601]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-18 01:43:00 +00:00
tadf 7cc92034be * ext/date/date_core.c: define date_sg_t.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-16 10:25:30 +00:00
tadf f5b033cd4e * ext/date/date_tmx.h: offset in struct tmx_funcs is now int.
* ext/date/date_strftime.c: ditto.
	* ext/date/date_core.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-16 09:49:17 +00:00
tenderlove eac2646327 * ext/psych/lib/psych.rb: bumping psych to 1.3.3
* ext/psych/psych.gemspec: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-15 16:29:55 +00:00
akr 37a1355bf8 * include/ruby/intern.h (rb_exec_arg_init): deprecated.
(rb_exec_arg_addopt): ditto.
  (rb_exec_arg_fixup): ditto.
  (rb_run_exec_options): ditto.
  (rb_run_exec_options_err): ditto.

* internal.h (rb_execarg_init): declared.
  (rb_execarg_addopt): ditto.
  (rb_execarg_fixup): ditto.
  (rb_execarg_run_options): ditto.

* process.c: call rb_execarg_addopt, rb_execarg_fixup,
  rb_execarg_run_options, rb_execarg_init.
  (rb_execarg_addopt): renamed from rb_exec_arg_addopt.
  (rb_exec_arg_addopt): stub to call rb_execarg_addopt.
  (rb_execarg_init): renamed from rb_exec_arg_init.
  (rb_exec_arg_init): stub to call rb_execarg_init.
  (rb_execarg_fixup): renamed from rb_exec_arg_fixup.
  (rb_exec_arg_fixup): stub to call rb_execarg_fixup.
  (rb_execarg_run_options): renamed from rb_run_exec_options_err.
  (rb_run_exec_options_err): stub to call rb_execarg_run_options.
  (rb_run_exec_options): call rb_execarg_run_options.

* io.c: call rb_execarg_addopt, rb_execarg_fixup,
  rb_execarg_run_options, rb_execarg_init.

* ext/pty/pty.c (establishShell): call rb_execarg_init and
  rb_execarg_fixup.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-12 11:34:51 +00:00
emboss 3ffd8a918f * ext/openssl/ossl_pkey_ec.c
test/openssl/test_pkey_ec.rb: Add support for EC_POINT_mul.
  Patch provided by Sambasiva Suda. Thanks!
  [ruby-core:44408][ruby-trunk - Feature #6310]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-10 02:38:40 +00:00
emboss 43759fc1ed * lib/openssl/ssl.rb: Use a simple random number to generate the
session id. MD5, as was used before, causes problems when
  using a FIPS version of OpenSSL. Issue was found by Jared
  Jennings, thank you!
  [ruby-trunk - Bug #6137]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-10 01:53:20 +00:00
akr 18088467e7 * process.c (rb_exec_async_signal_safe): exported.
* ext/pty/extconf.rb: modify $INCFLAGS to include internal.h

* ext/pty/pty.c: include internal.h.
  (chfunc): don't call rb_thread_atfork_before_exec.  use
  rb_exec_async_signal_safe instead of rb_f_exec.
  (establishShell): set up earg.  use rb_fork_async_signal_safe
  instead of rb_fork_err.

* internal.h (rb_exec_async_signal_safe): declared.
  (rb_fork_async_signal_safe): declared.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-10 01:29:58 +00:00
emboss 5bd7899b98 * ext/openssl/ossl.c
ext/openssl/ossl_pkey_rsa.c
  ext/openssl/ossl_pkey_dsa.c
  ext/openssl/ossl_pkey_ec.c: Forbid export passwords that are less
  than four characters long, as OpenSSL itself does not allow this.
  Issue found by Eric Hodel.
* ext/openssl/ossl_pkey_ec.c: Add export as an alias of to_pem,
  following the PKey interface contract.
* test/openssl/test_pkey_dsa.rb
  test/openssl/test_pkey_rsa.rb
  test/openssl/test_pkey_ec.rb: Add tests that assert correct
  behaviour when dealing with passwords that are less than four
  characters long.
  [ruby-core: 42281][ruby-trunk - Bug #5951]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-10 01:23:21 +00:00
emboss 21f1af2ec2 * ext/openssl/ossl.c: Fix error in example. Patch by David Albert.
Add/extend existing documentation. Examples now also cover RSA 
  signatures and PBKDF2.
  [ruby-core: 45154][ruby-trunk - Bug #6475]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-09 18:16:18 +00:00
emboss 14ba7fab58 * ext/openssl/ossl_ssl.c: Introduce SSLContext#renegotiation_cb and
remove SSLContext#disable_client_renegotiation and related
  functionality introduced in r35797. The new callback approach
  gives clients maximum flexibility to decide on their own what to
  do on renegotiation attempts.
  Add documentation for SSL module and SSLError. 
* test/openssl/test_ssl.rb: Add a test for
  SSLContext#renegotiation_cb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-09 16:44:12 +00:00
nobu 182dc9d40d process.c, ext/pty/pty.c: status on errors
* process.c (rb_fork_err): determine status on errors.
* ext/pty/pty.c (establishShell): reraise exception if something
  raised during sleep.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-08 02:26:39 +00:00
nobu bc81a19e99 ext/pty/pty.c: status to protect
* ext/pty/pty.c (establishShell): now needs status to protect from
  exceptions in rb_fork_err().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-08 02:25:55 +00:00
naruse efebb5b157 Suppress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-04 05:02:27 +00:00
nobu 81a0c608eb compatible loader
* marshal.c (r_object0): also load TYPE_USRMARSHAL, TYPE_DATA using
  compatible loader.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-04 02:40:30 +00:00
tadf 1ddb6f7059 * ext/date/date_core.c: checks whether the object is frozen or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-03 05:14:47 +00:00
naruse d054eb9631 Add a test for r35863.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-02 13:44:02 +00:00
drbrain fe962cde15 * ext/dl/lib/dl/struct.rb (DL::CStructEntity#set_ctypes): Refactored
#set_ctypes using newer ruby features to simplify its implementation.
* test/dl/test_c_struct_entry.rb (class DL):  Test to verify
  refactoring.

Reviewed by Aaron Patterson.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-31 22:07:09 +00:00
drbrain 40cf3e0cca * ext/dl/lib/dl/struct.rb (DL::CStructEntity::size): Refactored ::size
to remove unused variables and simplify using newer ruby features.
* test/dl/test_c_struct_entry.rb:  Test to validate refactoring

Reviewed by Aaron Patterson


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-31 00:27:34 +00:00