aboutsummaryrefslogtreecommitdiffstats
path: root/win32
Commit message (Collapse)AuthorAgeFilesLines
* file.c: check arguments lengthsnobu2015-03-221-2/+17
| | | | | | | * win32/file.c (rb_file_expand_path_internal): check arguments lengths and should not loose preci quielty. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: path_drivenobu2015-03-221-2/+9
| | | | | | | * win32/win32.c (path_drive): extract from winnt_stat, return the drive number in the path, or the current drive. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: stat_by_findnobu2015-03-222-24/+38
| | | | | | * win32/win32.c (stat_by_find): extract from winnt_stat. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: stati64_handlenobu2015-03-221-3/+16
| | | | | | * win32/win32.c (stati64_handle): extract from rb_w32_fstati64. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: name_for_statnobu2015-03-221-10/+22
| | | | | | * win32/win32.c (name_for_stat): extract from rb_w32_stat. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: S_IFLNKnobu2015-03-191-0/+3
| | | | | | | * win32/win32.c (fileattr_to_unixmode): set symlink for reparse points. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: no S_IWGRP and S_IWOTHnobu2015-03-191-5/+2
| | | | | | | * win32/win32.c (fileattr_to_unixmode): do not set S_IWGRP and S_IWOTH reset in wstati64. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dir.h: direct::d_typenobu2015-03-142-4/+13
| | | | | | | | | | * dir.c (glob_helper): use d_type to reduce lstat system calls. * win32/dir.h (struct direct): add d_type instead of d_isdir and d_isrep. SYMLINKD is unreliable, since the target can be replaced after a link was created. * win32/win32.c (readdir_internal): set d_type. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dir.c: glob short namesnobu2015-03-082-6/+28
| | | | | | | | | * dir.c (glob_helper): match patterns against legacy short names too, not only ordinary names. [ruby-core:67954] [Bug #10819] * win32/dir.h (struct direct): add short name members. * win32/win32.c (opendir_internal, readdir_internal): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* miniinit.c: minimum built-in encodings in minirubynobu2015-03-081-1/+1
| | | | | | | | | * common.mk (MINIOBJS): no longer need dmyenc.o. * miniinit.c (Init_enc): declare minimum built-in encodings so that these Encoding constants will be available in miniruby. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Makefile.sub: RUBY_PROGRAM_VERSIONnobu2015-03-081-0/+1
| | | | | | | * win32/Makefile.sub (config.status): now RUBY_PROGRAM_VERSION is necessary for fake.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: same fake.rbnobu2015-03-071-18/+0
| | | | | | | * common.mk (fake.rb): generate from same template on all platforms including win32. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* expand-config.rb: without fake.rbnobu2015-03-071-2/+3
| | | | | | | | * win32/Makefile.sub (ruby_pc): without fake.rb. * tool/expand-config.rb: no longer depends on fake.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkconfig.rb: without fake.rbnobu2015-03-071-0/+4
| | | | | | | * tool/mkconfig.rb: use arguments instead of built-in constants to work without fake.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: BOOTSTRAPRUBYnobu2015-03-071-0/+2
| | | | | | | * configure.in (BOOTSTRAPRUBY): baseruby if cross compiling or miniruby, anyway runnable ruby command. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: reduce memory sizenobu2015-02-241-4/+5
| | | | | | | * win32/win32.c (szInternalCmds): reduce memory size, from 506 on 32bit and 702 on 64bit to 490 bytes, and remove relocations. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Makefile.in: make static IDs symbols localnobu2015-02-231-2/+4
| | | | | | | * Makefile.in (LIBRUBY_SO): make symbols for static IDs which begin with ruby_static_id_ local too. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: volume serial numbersnobu2015-02-201-19/+19
| | | | | | | * win32/win32.c (different_device_p): compare by volume serial numbers, not by path names. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/file.c: fix drive letternobu2015-02-181-0/+1
| | | | | | | | | * win32/file.c (rb_file_expand_path_internal): neither the drive of base directory nor the current drive are involved in the result if different than the drive of path. [ruby-core:68130] [Bug #10858] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: EXDEV for directorynobu2015-02-181-2/+33
| | | | | | | | * win32/win32.c (wrename): return EXDEV if moving a directory to another drive, since MoveFileExW does not set proper error code. [ruby-core:68162] [Bug #10865] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/file.c: fix drive letternobu2015-02-171-6/+7
| | | | | | | | * win32/file.c (rb_file_expand_path_internal): do not make invalid (or ADS) path if the path has a drive letter, the result also should have be under it. [ruby-core:68130] [Bug #10858] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* rmdirs.bat: remove last "."nobu2015-01-221-0/+1
| | | | | | * win32/rmdirs.bat: remove last "." since rmdir fails to remove it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* builtin encodings and transcoder locationsnobu2015-01-181-4/+7
| | | | | | | | | | | * Makefile.in (VPATH, NEWLINE_C), common.mk (common-srcs): make and use newline.c under enc/trans directory, not toplevel. no longer search enc directory implicitly. * configure.in, enc/Makefile.in (BUILTIN_ENCS, BUILTIN_TRANSES): prefix respective directory names to builtin encodings and transcoder source names. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* never-NULL pointer checknobu2014-12-261-1/+1
| | | | | | | | * dir.c (ruby_glob0): no need to check never-NULL pointer. reported by Denis Denisov <denji0k AT gmail.com>. * win32/file.c (rb_file_expand_path_internal): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32: realloc failuresnobu2014-12-262-3/+11
| | | | | | | | * win32/file.c (code_page_i): handle realloc failure. reported by Denis Denisov <denji0k AT gmail.com>. * win32/stub.c (stub_sysinit): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32: suppress warningsnobu2014-12-242-24/+24
| | | | | | | | | | * win32/file.c (home_dir, code_page_i): parenthesize to suppress warnings. * win32/win32.c (is_command_com, join_argv, w32_cmdvector, kill), (constat_attr_color_reverse, constat_attr): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c (w32_spawn): `v2` is used not only for `shell` but alsousa2014-12-031-1/+1
| | | | | | | | `cmd`, so must not free before using `cmd`. [ruby-core:66648] [Bug #10563] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: rebuild verconf.h for each configurenobu2014-12-011-0/+2
| | | | | | | * win32/Makefile.sub (verconf.h): so depends on verconf.mk, which is rebuilt by setup.mak. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: use UTF-8 for argvnobu2014-11-291-6/+7
| | | | | | | | | | * ruby.c (ruby_set_argv): convert argv from UTF-8. * win32/win32.c (rb_w32_sysinit, cmdglob, w32_cmdvector): convert wide char command line to UTF-8 argv, and glob in UTF-8 so that metacharacters would match multibyte characters. [ruby-dev:48752] [Bug #10555] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: convert by Win32 APInobu2014-11-291-6/+13
| | | | | | | * win32/win32.c (win32_direct_conv, rb_w32_readdir): convert UTF-8 and filesystem code page by using Win32 API directly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: INITOBJSnobu2014-11-271-3/+3
| | | | | | * common.mk (INITOBJS): rename DMYEXT. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dmyenc.c: separatenobu2014-11-271-0/+3
| | | | | | | * dmyenc.c (Init_enc): separate from dmyext.c for statically linked extension excluding encoding libraries. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: for non-standard consolenobu2014-11-261-1/+1
| | | | | | | * win32/win32.c (constat_reset): do nothing on non-standard console emurators. [ruby-core:66471] [Bug #10546] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: use PWD with nmakenobu2014-11-211-0/+1
| | | | | | | | * common.mk (ext/ripper/ripper.c): move MAKEDIR to Makefile.sub. * win32/Makefile.sub (PWD): set to $(MAKEDIR), nmake built-in macro. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/Makefile.sub (top_srcdir): added because lacking this macro causesusa2014-11-211-0/+1
| | | | | | | build error at r48526. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c (rb_w32_write): should set the error ofusa2014-11-181-1/+1
| | | | | | | | GetOverlappedResult()'s, not WriteFile()'s (it's always ERROR_IO_PENDING, of course). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * rb_w32_fstat{,i64}: speed up. adjuting timestamps in this functionusa2014-11-131-1/+8
| | | | | | | | | is to get rid of the side effect of ENV["TZ"]. then, if ENV["TZ"] is not set, no need to adjust. this change makes File#stat about 60% faster. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/Makefile.sub (prelude.c): search from source directory,nobu2014-11-111-0/+5
| | | | | | not depending on VPATH, in parallel to r35135. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: user namenobu2014-11-101-0/+3
| | | | | | | * win32/win32.c (init_env): save USER environment variable in login name if it is set. [ruby-core:66163] [Bug #10493] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c (rb_w32_read): retry with reduced length if cannot tousa2014-11-101-0/+7
| | | | | | | write any data but no error occurs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c, include/win32/win32.h (rb_w32_set_nonblock): newusa2014-11-101-1/+43
| | | | | | | | | | | | | | | | | | | | function to support nonblock-mode of pipes. * win32/win32.c (rb_w32_read): nonblock-mode pipe returns ERROR_NO_DATA if there is no data, but also returns it if remote-end is closed. * win32/win32.c (rb_w32_write): if cannot to write any data, it may be blocking. * io.c (rb_io_set_nonblock): use rb_w32_set_nonblock for Windows. * ext/io/nonblock/nonblock.c (rb_io_nonblock_set): use ruby's API when setting nonblock-mode. * test/ruby/test_io.rb: test nonblock pipes on Windows. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32.c: login name encodingnobu2014-11-101-3/+4
| | | | | | | * ext/etc/etc.c (etc_getlogin): set login name encoding properly. [ruby-core:66163] [Bug #10493] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* reaply r48278nobu2014-11-061-0/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert r48278 "common.mk: update unicode data only if BASERUBY is available"naruse2014-11-061-7/+0
| | | | | | | | Moreover its error "make[1]: *** No rule to make target `lib/unicode_normalize/tables.rb', needed by `srcs-lib'. Stop." is not a good error message. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: update unicode data only if BASERUBY is availablenobu2014-11-051-0/+7
| | | | | | | | * common.mk (lib/unicode_normalize/tables.rb): do nothing unless BASERUBY is available. MINIRUBY cannot load extension libraries, so cannot update Unicode data. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/setup.mak: $(APPEND) with some arguments insert a space beforeusa2014-10-311-1/+1
| | | | | | | | | the arguments, so it causes error if the arguments are expected to be a macro definition. this fix resolve the build error introduced at r48210. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/setup.mak: get target architecture from the compilernobu2014-10-312-36/+20
| | | | | | | | | * win32/Makefile.sub, win32/setup.mak (MACHINE): get target architecture from the compiler, instead of environment variable at build time, which is irrelevant to runtime environment, and not set when running in cygwin sshd. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: UNICODE_FILESnobu2014-10-211-1/+0
| | | | | | | | | | | * common.mk (UNICODE_FILES): revert the rule that Unicode data files depend on downloader target, and add missing dependency of lib/unicode_normalize/tables.rb * common.mk (after-configure): removed as srcdir should be read-only after update. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: after-configurenobu2014-10-211-0/+1
| | | | | | | * common.mk (after-configure): update Unicode files after configure run. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: translate to assemblernobu2014-10-081-0/+3
| | | | | | | * lib/mkmf.rb (create_makefile): add rules to translate to assembler sources. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e