summaryrefslogtreecommitdiff
path: root/win32/win32.c
AgeCommit message (Collapse)Author
2005-10-01* win32/win32.c (do_select, rb_w32_select): brush up.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17* win32/win32.c (rb_w32_select): documented problem.ocean
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17* win32/win32.c (rb_w32_select): fixed deadlock bug.ocean
because select(2) modifies its fd_set arguments, it must be restored sometimes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17* win32/win32.c (rb_w32_select): I hope performance problem wasocean
solved. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17* win32/win32.c (rb_w32_select): console support is back.ocean
but still has performance problem because I loosely took 1 second for wait time. I'll fix it later. (The reason I drastically changed the code is that I wanted to implement the fileset management as single function, and I was worried that if pipe or console was always available, socket may not be processed any time) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17* win32/win32.c (rb_w32_select): select for socket didn't work.ocean
this caused deadlock in drb test. this happened because GetFileType for socket handle returns FILE_TYPE_PIPE. Of course, it's not a pipe. So socket handle didn't reach winsock's select function. * win32/win32.c (rb_w32_select): read for pipe still kept brocking even if writer handle was closed. r,w = IO.pipe Thread.new { sleep 3; puts "------- 1" w.puts("foo") sleep 3; puts "------- 2" w.puts("boo") sleep 3; puts "------- 3" w.close } until r.eof? # should break by w.close but didn't. puts r.gets end * win32/win32.c (rb_w32_select): temprary reverted console support but it'll be back soon. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-16* dir.c (rb_push_glob): fix delimiter bug. fixed: [ruby-dev:27105]nobu
* dir.c (dir_s_aref, dir_s_glob): allow multiple patterns. [ruby-dev:27110] * win32/win32.c (cmdglob): enable brace expansion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-15* win32/win32.c (rb_w32_pipe_exec): remove unnecessary CloseHandle().usa
* win32/win32.c (extract_console_fd, peek_console): new functions. * win32/win32.c (rb_w32_select): check consoles by polling them. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-14* win32/win32.c (collect_file_fd): rename from extract_file_fd.usa
* win32/win32.c (extract_pipe_fd, peek_pipe): new functions. * win32/win32.c (rb_w32_select): check pipes by polling them. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-14* dir.c (ruby_glob): glob function not using ruby exception system.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-12* win32/win32.[hc] (rb_w32_argv_size, ...): reverted my latest changeocean
to avoid incompatible pointer warning. (mingw32) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-07* win32/win32.[hc] (rb_w32_utime): constified.ocean
* win32/win32.h (rb_w32_stat): added prototype. * win32/win32.[hc] (rb_w32_argv_size,rb_w32_join_argv,rb_w32_aspawn): changed `char *const *' to `const char *const *'. (constify string) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-18* win32/win32.c (socketpair_internal): need to call open_ifs_socket()usa
to create sockets instead of winsock's socket(). fixed: [yarv-dev:581] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-03* configure.in, {bcc32,win32,wince}/Makefile.sub (HAVE_SNPRINTF,usa
HAVE_VSNPRINTF): use win32/win32.c's implementation instead of missing/vsnprintf.c's. * win32/win32.[ch] (rb_w32_snprintf, rb_w32_vsnprintf): reverted. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-25* win32/win32.[ch]: (rb_w32_vsnprintf, rb_w32_snprintf): removed.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-23* sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,nobu
using missing/vsnprintf.c. [ruby-dev:26580] * missing/vsnprintf.c: made the output changeable. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-16* win32/win32.[hc]: constified socket functions. [ruby-dev:26553]ocean
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-14reordered just for diffing.ocean
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-14* win32/win32.c (rb_w32_strerror): should return correct messageocean
for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533] * win32/win32.c (rb_w32_strerror): stripped CR LF on the tail. (bcc32) [ruby-dev:26533] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-13* win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)ocean
if file or directory already exists. (bcc32) * win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL) if it is not directory. (bcc32, win32) * win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore FILE_ATTRIBUTE_READONLY flag on function failure. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-08* win32/win32.c (StartSockets): iSockOpt is no longer used.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-06* win32/win32.c (open_ifs_socket): new function.usa
* win32/win32.c (StartSockets, rb_w32_socket): use open_ifs_socket() instead of socket(). all changes are derived from [ruby-core:5388]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-20* ext/dbm/dbm.c (fdbm_closed): new method DBM#closed?usa
* ext/gdbm/gdbm.c (fgdbm_closed): new method GDBM#closed? * ext/sdbm/init.c (fsdbm_closed): new method SDBM#closed? * test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb, test/sdbm/test_sdbm.rb (teardown): close all db objects before deleting data files. * win32/win32.{ch} (unlink): hook runtime function to change file attribute before unlinking. merge from 1.8, see [ruby-dev:26360] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-18* win32/win32.c (NtInitialize): fix typo.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-18* dir.c (glob_helper): get rid of using String. [ruby-dev:26180]nobu
* eval.c (ruby_options), win32/win32.c (NtInitialize): move argument intialization back. [ruby-dev:26180] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-17* win32/win32.c (unixtime_to_filetime): use localtime() instaed ofusa
gmtime() when using FileLocalTimeToFileTime(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-15* win32/win32.{h,c}: define rb_{p,g,u}id_t.ocean
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-15* win32/win32.c (unixtime_to_filetime): deal with DST.nobu
[ruby-talk:141817] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-14* configure.in: Check for the availability of pid_t, gid_t and uid_t andnobu
remove AC_TYPE_UID_T. fixed: [ruby-core:04745] * defines.h: Remove pid_t typedef. * ruby.h: Define rb_pid_t, rb_gid_t and rb_uid_t in accordance with the available system types. * process.c: Change instances of pid_t and gid_t to their rb_* counterparts. * ext/pty/pty.c: Change pid_t to rb_pid_t. * vms/config.h: Define HAVE_{P,G,U}ID_T to 1. * win32/Makefile.sub: Remove #define for {g,u}id_t. * win32/win32.c: Change pid_t to rb_pid_t. * wince/Makefile.sub: Remove #define for {g,u}id_t. * wince/sys/types.h: Remove definitions of {p,g,u}id_t. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-05* dir.c (rb_glob): fixed mismatch of argument.ocean
* dir.c (fnmatch): removed unnecessary code. (by string.c 1.219) * win32/win32.c (NtInitialize): ditto. (by numeric.c 1.117) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-04* file.c (eaccess): workaround for VC++8 runtime.usa
* win32/win32.c (ioinfo): VC++8 support. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10* win32/win32.c (rb_w32_fdopen): suppress warning.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10* configure.in, win32/Makefile.sub (LIBS, COMMON_HEADERS): useusa
winsock2 on mswin32/mingw. * ext/socket/extconf.rb: ditto. * win32/win32.c (StartSockets): ditto. * win32/win32.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10* bcc32/Makefile.sub (COMMON_LIBS): add libraries included innobu
import32.lib. * lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to rule lines, add search path to implicit rules, and set Borland make special macros for search path. * win32/win32.c, win32/win32.h (read): aboid a BCC runtime bug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10* win32/win32.c (init_stdhandle): assign standard file handles.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-26* win32/win32.c (flock_winnt, flock_win95): unlock file even ifusa
LOCK_NB is specified. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-06* win32/win32.c (rb_w32_close): didn't close socket handle.ocean
* win32/win32.c (rb_w32_open_osfhandle): bcc32's _open_osfhandle never set EMFILE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-05* parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug.ocean
shift assignment operator '>>=' for __int64 in struct may generate collapsed code. [ruby-dev:25342] * win32/win32.[ch]: failed to compile on bcc32 (and probably wince) [ruby-dev:25306] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-15* win32/win32.c (rb_w32_fdisset): check whether the handle is valid.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-14* win32/win32.c (rb_w32_close): need to reset osfhnd().usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08* win32/win32.c (rb_w32_pipe_exec): need to close original socketusa
handle. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08* win32/win32.c (rb_w32_pipe_exec): must close original handleusa
before exec. fixed: [ruby-dev:25112] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08* win32/win32.c (rb_w32_fclose, rb_w32_close): shutdown socketusa
before closesocket(). fixed: [ruby-dev:25112] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-07* win32/win32.c (is_socket): reorder of function definitions.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-07* io.c (pipe_open): win32 bidirectional pipe support.usa
* win32/win32.[ch] (rb_w32_pipe_exec): ditto. * win32/win32.[ch] (socketpair): new function. POSIX socketpair emulation. * win32/win32.c (socketpair_internal): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-07* io.c (dir_s_mkdir): win32 special processing doesn't need any longer.usa
* win32/win32.[ch] (rb_w32_mkdir): new function. POSIX.1 compatible interface. * win32/win32.[ch] (rb_w32_rmdir): new function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-06* io.c (is_socket): new function.usa
* io.c (rb_io_close_read, rb_io_close_write): use is_socket(). * io.c (rb_io_fptr_finalize): need to check fptr->f before calling rb_io_fptr_cleanup(). * io.c (pipe_open): win32 pipe support (experimental). * win32/win32.[ch] (rb_w32_pipe_exec): return file descripters instead of FILE structure. * win32/win32.[ch] (rb_w32_is_socket): new function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-29* win32/win32.c (CreateChild): push back the last space before nextusa
loop because CharNext() eats it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-18* win32/win32.[ch] (rb_w32_isatty): new function to replace MSVCRT'susa
isatty because it never sets errno. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-12* eval.c (ruby_options): now we cannot call rb_glob() beforeusa
ruby_init(), so call rb_w32_cmdvector() at ruby_options(). * win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and export it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e