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

536 Коммитов

Автор SHA1 Сообщение Дата
usa 7b2f9d9238 * win32/win32.c (rb_w32_open, rb_w32_read, rb_w32_write): fallback to
MSVCRT if text mode is specified. this case will not be used from
	  ruby itself.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-30 11:06:52 +00:00
usa 29c7201262 * win32/win32.c (rb_w32_read): EOF is not error.
ref [ruby-dev:36050]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-30 10:51:40 +00:00
usa d2d37173e7 * win32/win32.c (rb_w32_read, rb_w32_write): more accurate handling
of wait result.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-28 19:49:20 +00:00
usa 9f31706636 * win32/win32.c (set_pioinfo_extra): use MSVCRT's open() and close().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-28 15:21:04 +00:00
usa 3c8dca55c4 * win32/win32.c, include/ruby/win32.h (rb_w32_open): overlapped file
I/O support.

	* win32/win32.c, include/ruby/win32.h (rb_w32_pipe): overlapped pipe
	  I/O support.

	* wn32/win32.c (rb_w32_read, rb_w32_write): overlapped I/O support to
	  enable canceling I/O.

	* thread_win32.c (ubf_handle): remove workaround.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-28 12:46:58 +00:00
usa 87746352f4 * win32.c (init_stdhandle): set binmode.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-25 14:58:01 +00:00
nobu 0d0c147f23 * transcode.c (rb_econv_substr_append): fix for buffer overrun.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-25 08:34:32 +00:00
nobu 0d8df88893 * common.mk (parse.h): workaround for nmake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14 02:45:11 +00:00
nobu a64266a728 * configure.in (rb_cv_missing__dtos18, rb_cv_missing_fconvert),
ext/digest/md5/md5.c, ext/openssl/ossl.c (main),
  ext/socket/extconf.rb (ipv6, wide-getaddrinfo): main should be int.

* main.c (main), win32/winmain.c, wince/wincemain.c (WinMain): envp is
  no longer used so long time.  based on a patch from Peter Bowen at
  [ruby-core:18208]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-09 23:15:08 +00:00
nobu 2ce5ff1ac1 * Makefile.in, common.mk, {bcc,win}32/Makefile.sub (clean-ext): do not
use miniruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 07:28:56 +00:00
nobu eab4f19731 * lib/mkmf.rb, {bcc32,win32}/Makefile.sub (CLEANLIBS, CLEANOBJS):
moved clean targets to platfrom makefiles.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07 05:16:27 +00:00
usa 19e2cdbd47 * win32/Makefile.sub (config.status): export BASERUBY.
* enc/depend: avoid GNU make'ism.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06 04:55:39 +00:00
nobu c6fb433c3f * win32/win32.c (rb_w32_seekdir): no need to rewind to seek forward.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-01 05:54:45 +00:00
nobu 807fcf9d13 * win32/win32.c (rb_w32_select): recalc the rest of timeout for each
iterations.  [ruby-core:18015]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-30 08:48:31 +00:00
nobu 66660a893a * win32/win32.c (overlapped_socket_io, fcntl, rb_w32_close): must not
pass a pointer to int which is smaller than st_data_t on mswin64.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-28 09:14:14 +00:00
nobu d2f72cca6e * win32/win32.c (CreateChild, overlapped_socket_io): suppress
warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-28 07:49:56 +00:00
usa 009db87ce2 * win32/win32.c (MAXPATHLEN): define before use.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-28 07:07:12 +00:00
nobu c30616378e * dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
versions instead.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-27 00:15:31 +00:00
usa 846584710a * win32/win32.c (exit_handler): use st_free_table() to free socklist.
* win32/win32.c (rb_w32_pipe_exec, rb_w32_accept, rb_w32_socket,
	  rb_w32_socketpair): should check and release fd and sockets/handles
	  if an error occurs in rb_w32_open_osfhandle().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-24 07:33:00 +00:00
usa f92478c0fb * win32/win32.c (overlapped_socket_io): avoid warnings.
* thread_win32.c (ubf_handle): refactoring.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-24 07:05:49 +00:00
usa ee560dc68f * win32/win32.c (init_func): new function to get API's address which
is often used and not supported on all Windows.

	* win32/win32.c (overlapped_socket_io): shouldn't use overlapped I/O if
	  CancelIo() is not supported.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-22 08:22:32 +00:00
usa 068dd60372 * win32/win32.c (socklist): table for registering socket options
(currently only O_NONBLOCK).

	* win32/win32.c (StartSockets, exit_handler): alloc/free socklist.

	* win32/win32.c (is_socket): use socklist.

	* win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
	  register new socket to socklist.

	* win32/win32.c (rb_w32_close): remove closing socket from socklist.

	* win32/win32.c (fcntl): register socket options.

	* win32/win32.c (overlapped_socket_io): send to/recv from socket with
	  overlapped operation if the socket is not nonblocking mode.
	  [experimental]

	* win32/win32.c (rb_w32_send, rb_w32_sendto, rb_w32_recv,
	  rb_w32_recvfrom): use overlapped_socket_io().

	* win32/win32.c (open_ifs_socket): set overlapped mode. this is the
	  default mode of winsock's socket(), so lacking it is an old bug.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-18 05:59:46 +00:00
usa e74af2cf41 * win32/Makefile.sub (ruby_version): follow changes in configure.in.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-15 13:34:49 +00:00
usa 25498d24c8 * thread_win32.c (ubf_handle): cancel blocking IO if it can (only
Vista). see [ruby-dev:35446]

	* win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-15 09:14:09 +00:00
usa a0fe21b362 * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.
* {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12 20:39:02 +00:00
usa 2d46553ffa * win32/Makefile.sub (LIBRUBY_DLDFLAGS): import library which created
with DLL is broken. save import library which created by lib.exe and
	  install it. 
	  fixed the problem mentioned at the postscript of [ruby-dev:35448]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12 14:58:07 +00:00
usa dde0905830 * win32/win32.c (rb_w32_select): shoudn't pass non-socket handle to
original select().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 16:55:14 +00:00
usa bf050c3cd6 * win32/setup.rb, win32/Makefile.sub (PLATFORM): use $(PLATFORM)
instead of $(OS) because ENV["OS"] is used in test-all (drb).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 13:10:29 +00:00
usa 4532c0d81e * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
prohibit inheritance of sockets, too. [experimental]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 07:18:29 +00:00
usa e9db21d9cf * win32/win32.c (CreateChild): the measures for Vista is no longer
unnecessary.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-11 05:43:03 +00:00
usa 52a3897f4f * win32/win32.c (insert): follow recent changes of globbing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-10 08:22:04 +00:00
usa d3a0ef8198 * include/ruby/win32.h, win32/win32.c (rb_w32_getppid): now support
getppid() on win32 (but only Win2k or later).

	* process.c (get_ppid): remove win32 special logic.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-24 02:14:00 +00:00
usa 7c936bcbb7 * win32/win32.c (rb_w32_osid, rb_w32_osver, CreateChild): XP is
is different from Vista about pipe handle inheritance.
	  fixed [ruby-core:17367]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21 15:45:16 +00:00
usa 5f2183f6b3 * win32/win32.c (rb_w32_spawn): no longer support P_WAIT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-21 08:34:42 +00:00
usa ad24701cce * win32/win32.c (errmap): add some pipe errors.
* win32/win32.c (rb_w32_write): set errno when CRT's errno is EINVAL
	  for pipe errors.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-18 09:32:03 +00:00
usa 32c63d1f35 * win32/win32.c (poll_child_status): set EINVAL to errno when
GetExitCodeProcess() fails with ERROR_INVALID_HANDLE.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-18 09:10:04 +00:00
usa 62617789ed * win32/win32.c (CreateChild): no need to inherit handles here because
spawn'ed child cannot detect that STDIN is closed.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-17 08:31:41 +00:00
usa 12cec48616 * win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
* ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
	  freehostent, freeaddrinfo): undef before define because these are
	  macros in some versions of Windows SDK.

	  merged from ruby_1_8.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-06 12:52:30 +00:00
nobu 3064bb9f8d * win32/Makefile.sub (miniruby$(EXEEXT)): miniruby cannot be
written by miniruby itself.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03 11:04:18 +00:00
nobu eaa3ffbae8 * lib/un.rb (wait_writable): wait until target files can be
written actually.

	* win32/Makefile.sub (LDSHARED_0, LINK_SO): get rid of failure of
	  mt.exe.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-02 09:51:30 +00:00
nobu 7c5e3348f7 * suppress warnings on cygwin, mingw and mswin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-01 19:55:25 +00:00
nobu a9396fd580 * win32/mkexports.rb (Exports#objdump, Exports#each_line): extracted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-28 08:50:41 +00:00
nobu 23c2cf545c * Makefile.in (MKPREP): appended $(RBCONFIG).
* common.mk (enc.mk, prelude.c): not depend on $(RBCONFIG) on mswin32
  to get of compiling twice each time.

* win32/Makefile.sub (prelude.c): not depend on $(PREP).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-28 08:41:52 +00:00
usa 72eb7e2a41 * win32/mkexports.rb (Exports::Mswin#each_export): speed up.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-28 08:37:37 +00:00
nobu 0d3d7c3a1c * Makefile.in (MKPREP), common.mk, win32/Makefile.sub (prelude.c): get
rid of depending PREP with nmake.

* common.mk (encs): depends on libruby.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-27 10:12:46 +00:00
usa 9416fedc28 * process.c, include/ruby/intern.h (rb_run_exec_options): externed.
* process.c (save_redirect_fd, save_env_i, save_env, run_exec_dup2,
	  run_exec_open, run_exec_pgroup, run_exec_rlimit, rb_run_exec_options):
	  save parent's process environments.
	  !!!remark!!! these are not thread-safe.

	* process.c (rb_spawn_internal): remove calling run_exec_options()
	  because cannot restore after spawn. we'll fix this later.

	* io.c (pipe_open): ditto.

	* test/ruby/test_process.rb (test_execopts_env): upcase environment
	  variable name for case insensitive platforms.

	* win32/win32.c (init_env): set USER environment variable only when
	  USERNAME is available.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-12 14:15:32 +00:00
nobu b0c77fe85b * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
(MINIOBJS, ARCHMINIOBJS): separated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-03 03:56:07 +00:00
usa 5bf63ffcaa * {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-01 00:42:06 +00:00
usa b2acbb2c67 * {bcc,win}32/Makefile.sub (config.h): define ssize_t.
* io.c (copy_stream_body): some platform don't have O_NOCTTY.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-31 09:58:41 +00:00
usa bc8c8e90d5 * {bcc,win}32/Makefile.sub: follow below changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-14 02:35:24 +00:00