Commit Graph

398 Commits

Author SHA1 Message Date
Piotr Caban f00b7f4058 msvcrt: Use fd critical section in _setmode. 2015-06-04 19:02:26 +09:00
Piotr Caban bd6eaf918c msvcrt: Get rid of msvcrt_is_valid_fd helper. 2015-06-03 22:52:04 +09:00
Piotr Caban 9ce2a8a60c msvcrt: Use fd critical section in msvcrt_create_io_inherit_block. 2015-06-03 22:52:02 +09:00
Piotr Caban 86baccc9ae msvcrt: Get rid of msvcrt_fdtoh helper. 2015-06-03 22:52:00 +09:00
Piotr Caban 9278190d46 msvcrt: Use fd critical section in _futime64. 2015-06-03 22:51:57 +09:00
Piotr Caban 16285f5700 msvcrt: Use fd critical section in read. 2015-06-03 22:51:55 +09:00
Piotr Caban b052afd4af msvcrt: Use fd critical section in msvcrt_free_fd. 2015-06-03 22:51:53 +09:00
Piotr Caban c7b0fb5154 msvcrt: Use fd critical section in dup2. 2015-06-03 22:51:50 +09:00
Piotr Caban 760b78813d msvcrt: Don't ignore pmode attribute in _wsopen_s. 2015-04-17 14:53:53 +09:00
Michael Stefaniuc 278b70bdd0 msvcrt: Clarify comparison of the diff of two unsigneds with 0 (PVS-Studio). 2015-03-06 20:32:02 +09:00
Piotr Caban 90b68f9964 msvcrt: Reset write direction after flush on read/write stream. 2015-01-26 11:22:58 +01:00
Piotr Caban 7880525f44 msvcrt: Handle read buffer flushing in msvcrt_flush_buffer helper. 2015-01-26 11:22:54 +01:00
Piotr Caban ba0d1586ff msvcrt: Drop read buffer in _flsbuf. 2015-01-21 18:08:11 +01:00
Piotr Caban 6c2d4f1092 msvcrt: Use fd critical section in _fstat64. 2014-12-05 20:48:02 +01:00
Piotr Caban f2f45d5fe6 msvcrt: Use fd critical section in _chsize_s. 2014-12-05 20:48:01 +01:00
Piotr Caban fa6de59770 msvcrt: Use fd critical section in _lseeki64. 2014-12-05 20:47:59 +01:00
Piotr Caban ffdd16cc0d msvcrt: Use fd critical section in _locking. 2014-12-05 20:47:57 +01:00
Piotr Caban 9a4cfbc3ed msvcrt: Use fd critical section in _eof. 2014-12-05 20:47:55 +01:00
Iván Matellanes 17fcef507f msvcrt: Call the _nolock variant when the file is already locked. 2014-12-01 11:11:16 +01:00
Piotr Caban afc6962a24 msvcrt: Use fd critical section in _close. 2014-11-11 23:55:52 +09:00
Piotr Caban 4508e665c0 msvcrt: Use fd critical section in _commit. 2014-11-11 23:55:49 +09:00
Piotr Caban 1d791f5db2 msvcrt: Rename msvcrt_get_ioinfo function. 2014-11-11 23:55:43 +09:00
Piotr Caban 0c4cb6ce5d msvcrt: Initialize file descriptor critical section. 2014-11-11 23:55:34 +09:00
Iván Matellanes bcbd83d154 msvcrt: Added _fread_nolock_s implementation. 2014-11-10 19:25:15 +09:00
Iván Matellanes 4f807d9ae9 msvcrt: Added _ungetwc_nolock implementation. 2014-11-05 13:15:44 +09:00
Iván Matellanes 6f24dd9677 msvcrt: Added _ungetc_nolock implementation. 2014-11-05 13:15:20 +09:00
Iván Matellanes b536ff62ef msvcrt: Added _fputwc_nolock implementation. 2014-11-05 13:14:35 +09:00
Iván Matellanes 975a95a25b msvcrt: Added _fputc_nolock implementation. 2014-11-05 13:14:03 +09:00
Iván Matellanes 89d91168a0 msvcrt: Use correct type for fread and fwrite return values. 2014-11-04 13:31:33 +09:00
Iván Matellanes 20e0a6f20d msvcrt: Avoid locking the file in _fclose_nolock. 2014-11-04 13:31:29 +09:00
Iván Matellanes 156684ba91 msvcrt: Added _fgetwc_nolock implementation. 2014-10-31 15:35:36 +09:00
Iván Matellanes 878b4a9280 msvcrt: Added _fgetc_nolock implementation. 2014-10-31 15:35:24 +09:00
Iván Matellanes f896cd3dc9 msvcrt: _filbuf should not lock any file. 2014-10-31 15:35:19 +09:00
Iván Matellanes 4bb80afedc msvcrt: Added _fflush_nolock implementation.
Thanks to Piotr Caban for the test.
2014-10-27 19:03:57 +09:00
Iván Matellanes c53e0384a5 msvcrt: Added _fseek_nolock implementation. 2014-10-16 13:02:24 +09:00
Iván Matellanes 5077d8c137 msvcrt: Added _fseeki64_nolock implementation. 2014-10-16 13:02:16 +09:00
Iván Matellanes 50574ccffa msvcrt: Added _ftell_nolock implementation. 2014-10-16 13:02:08 +09:00
Iván Matellanes 7cf0c877b3 msvcrt: Added _ftelli64_nolock implementation. 2014-10-16 13:01:59 +09:00
Iván Matellanes 25d7a1bbbf msvcrt: Added _fwrite_nolock() implementation. 2014-10-13 18:09:06 +09:00
Iván Matellanes 206ea48f20 msvcrt: Added _fread_nolock() implementation. 2014-10-13 18:08:54 +09:00
Iván Matellanes 9fda14a9d6 msvcrt: Added _fclose_nolock() implementation. 2014-10-08 14:47:46 +02:00
Piotr Caban d3a48ee342 msvcrt: Only check for flag presence in isatty function. 2014-08-04 16:18:10 +02:00
Piotr Caban a566569305 msvcrt: Always set fd to -1 in _sopen_s on failure. 2014-07-10 15:23:02 +02:00
Piotr Caban 0350b6c7fd msvcrt: Fix buffer allocation in setvbuf. 2014-06-30 22:04:52 +02:00
Piotr Caban 60eb44d820 msvcrt: Don't touch _bufsiz value while initializing FILE structure. 2014-06-27 10:37:54 +02:00
Piotr Caban fffbc8e570 msvcrt: Use file->_flag to check if file buffering is enabled. 2014-06-27 10:37:51 +02:00
Piotr Caban 18a416f7d5 msvcrt: Support NULL buffer in setvbuf. 2014-06-26 19:00:41 +02:00
Piotr Caban 1ae475dae8 msvcrt: Fix ungetc on files with empty buffer. 2014-06-26 19:00:41 +02:00
Piotr Caban f91f24f6e7 msvcrt: Fix _flsbuf behavior on streams with MSVCRT__IONBF flag. 2014-06-26 19:00:40 +02:00
Grazvydas Ignotas ad968be779 msvcrt: Implement bufsiz block flushing behavior. 2014-06-25 11:48:13 +02:00
Grazvydas Ignotas c6a160691a msvcrt: Clear _cnt on buffer flush. 2014-06-25 11:47:30 +02:00
Grazvydas Ignotas 40067dd011 msvcrt: Change internal buffer size to 4k. 2014-06-17 12:35:48 +02:00
Grazvydas Ignotas 9614283996 msvcrt: Free old buffer properly in setvbuf. 2014-06-17 12:35:22 +02:00
Piotr Caban b0424313fd msvcrt: Handle negative file->_cnt value in fwrite. 2014-06-11 19:15:26 +02:00
Piotr Caban 42e800fe79 msvcrt: Fix ioinfo structure size. 2014-05-07 10:27:46 +02:00
Victor Martinez Calvo f6bb1a51a9 msvcrt: Avoid null dereference in TRACE in MSVCRT__wfreopen. 2014-04-30 18:33:00 +02:00
Alexandre Julliard 0c496f0280 msvcrt: Update comments for non-exported functions. 2014-04-21 14:32:40 +02:00
Piotr Caban beeea28a53 msvcr100: Move functions implementation to msvcrt. 2014-04-16 18:00:15 +02:00
Piotr Caban e70bf5f8c6 msvcrt: Fix compilation errors on Mingw. 2014-04-16 18:00:01 +02:00
Piotr Caban 6ad441cd6b msvcrt: Return error on invalid handle in _open_osfhandle. 2014-02-12 19:15:28 +01:00
Piotr Caban 5e3cadf834 msvcrt: Don't close handles returned by GetStdHandle function. 2014-01-28 10:53:21 +01:00
Piotr Caban 6f4a181709 msvcrt: Flush standard streams in flushall function. 2014-01-28 10:53:09 +01:00
Piotr Caban e16059113c msvcrt: Support _IOSTRG flag in _filbuf function. 2014-01-28 10:52:35 +01:00
Piotr Caban ed2d53a36a msvcrt: Don't write to buffer in ungetc if _IOSTRG flag is specified. 2013-12-30 19:44:08 +01:00
Piotr Caban 6122c2ba37 msvcrt: Convert data to multibyte encoding in ungetwc if needed. 2013-12-30 19:44:02 +01:00
Andrey Zhezherun 3bb2c11757 msvcrt: Implemented _chsize_s. 2013-11-05 20:38:20 +01:00
Piotr Caban 647817b018 msvcrt: Don't call invalid parameter handler on invalid mode flag. 2013-11-01 14:17:31 +01:00
Piotr Caban afec0b00bd msvcrt: Make the first call to fwrite buffered. 2013-10-21 21:06:15 +02:00
Piotr Caban 024ece50e8 msvcrt: Fix parameter validation in _stat64 function. 2013-08-26 15:01:37 +02:00
Vincent Povirk 5f2e48f737 msvcrt: _[w]access_s returns an error code. 2013-08-22 10:27:54 +02:00
Piotr Caban 089cc78182 msvcrt: Fix lookahead buffer usage on pipes. 2013-08-21 19:52:51 +02:00
Piotr Caban f42c631d6e msvcrt: Improve setting standard handles flags. 2013-08-21 19:52:37 +02:00
Piotr Caban b6fc57ec84 msvcrt: Add _wmktemp_s implementation. 2013-07-24 14:35:12 -05:00
Piotr Caban 7d41f9b3e9 msvcrt: Add _mktemp_s implementation. 2013-07-24 14:35:11 -05:00
Piotr Caban ce9d4b807e msvcrt: Fix _mktemp implementation. 2013-07-24 14:35:11 -05:00
Piotr Caban 598ff4dd5a msvcrt: Reuse FILE object in wfreopen function. 2013-06-04 14:59:20 +02:00
Piotr Caban f99742a539 msvcrt: Move _fstat32 and _fstat64i32 functions to msvcrt. 2013-04-30 18:44:46 +02:00
Piotr Caban 280f8237b5 msvcrt: Move fread_s function to msvcrt. 2013-03-28 18:54:42 +01:00
Piotr Caban 6eeb000c90 msvcrt: Fixed fgetwc behavior on multibyte characters and Unicode files. 2013-03-25 16:24:13 +01:00
Piotr Caban cde73251d8 msvcrt: Remove incorrect cast in fgetws function. 2013-03-25 16:24:01 +01:00
Piotr Caban 027d985210 msvcrt: Limit access to out buffer in fread function.
DVDFab HD Decrypter expects that unused part of output buffer is not
modified.
2013-03-14 14:56:10 +01:00
Piotr Caban 8e5bebe262 msvcrt: Rename msvcrt_alloc_fd_from to msvcrt_set_fd. 2013-03-05 12:43:36 +01:00
Piotr Caban db92137f83 msvcrt: Reuse standard file descriptors after closing them. 2013-03-04 11:14:45 +01:00
Piotr Caban f565e4a315 msvcrt: Don't duplicate standard handles during initialization. 2013-03-04 11:14:41 +01:00
Andrew Talbot d8efcc9cb3 msvcrt: Avoid signed-unsigned integer comparisons. 2013-02-20 10:33:38 +01:00
Piotr Caban a8df9b14ad msvcrt: Use temporary buffers to speed up operations on stdout and stderr. 2013-01-30 13:05:29 +01:00
Piotr Caban 2ee5323a91 msvcrt: Don't make stdout and stderr bufferred when writing to console. 2013-01-30 13:05:29 +01:00
Francois Gouget a5ff4b8088 Assorted spelling fixes. 2013-01-29 12:13:04 +01:00
Piotr Caban 7654d95462 msvcrt: Added N flag support to fopen. 2013-01-25 17:30:18 +01:00
Piotr Caban ab4b4d34c3 msvcrt: Ignore S and R flags in fopen. 2013-01-25 17:30:10 +01:00
Marcus Meissner a8b076d67f msvcrt: read_utf8: free readbuf on return (Coverity). 2013-01-21 12:51:15 +01:00
Piotr Caban 7f4e1c65b1 msvcrt: Added support for commit flag in fopen. 2013-01-18 13:28:58 +01:00
Alexandre Julliard afee133b65 msvcrt: Fix incorrect use of the system wctomb function. 2013-01-14 13:47:00 +01:00
Piotr Caban 5515170d13 msvcrt: Be less strict while parsing file open mode in fopen function. 2013-01-14 11:04:19 +01:00
Piotr Caban c1792e1a8a msvcrt: Fixed ftell behaviour when file is opened for writing in text mode. 2013-01-11 12:04:36 +01:00
Piotr Caban 1fae72e759 msvcrt: Don't add '\r' character in fputws function.
write is responsible for adding '\r' characters, don't do it twice.
2013-01-11 12:04:29 +01:00
Piotr Caban a8c2ae1751 msvcrt: Use fputwc to output characters to file in fprintf functions. 2013-01-11 12:04:18 +01:00
Piotr Caban ebfa653618 msvcrt: Make fputwc encoding aware. 2013-01-11 12:04:08 +01:00
Piotr Caban d88aa37e59 msvcrt: Added UTF8 support to read function. 2013-01-10 12:29:13 +01:00
Piotr Caban ac3cdc7ffa msvcrt: Added UTF16 support to read function. 2013-01-10 12:29:07 +01:00