Commit Graph

218 Commits

Author SHA1 Message Date
Piotr Caban 2ff04b9d57 msvcrt: Added _wfopen_s implementation. 2010-04-21 11:07:45 +02:00
Piotr Caban 1b4bacea8c msvcrt: Added fopen_s implementation. 2010-04-19 15:12:10 +02:00
Piotr Caban d1fa8b64e4 msvcrt: Use per thread locale in many functions. 2010-04-15 16:51:47 +02:00
Piotr Caban b90320652d msvcrt: Rename functions conflicting with mingw headers. 2010-03-29 15:50:19 +02:00
Uwe Bonnes 0d16965832 msvcrt: read_i should pull in LF after CR only in unbuffered mode. 2010-01-28 15:30:26 +01:00
Uwe Bonnes 92ac665d37 msvcrt: Check for EOF before correcting CR/LF. 2010-01-28 15:30:26 +01:00
Uwe Bonnes e6f1ae029e msvcrt: Handle CR at buffer boundary and test case. 2010-01-18 15:32:53 +01:00
Uwe Bonnes d95c857a4f msvcrt: xxopen() accepts spaces in the mode string. 2010-01-18 14:36:43 +01:00
Jeff Zaroyko c2459deeff msvcrt: Check if argument passed to _dup2 is positive. 2010-01-14 09:41:43 -06:00
Alexandre Julliard ded81aebc7 msvcrt: Add validity checks on the size of the handle inheritance block. 2009-09-10 15:29:04 +02:00
Michael Stefaniuc 5f0fb8350f msvcrt: Replace size_t with MSVCRT_size_t. 2009-05-27 15:39:57 +02:00
Alexandre Julliard 82f175e9b5 msvcrt: Replace long by MSVCRT_long. 2009-05-23 11:57:39 +02:00
Alexandre Julliard ac760a47f3 msvcrt: Fix the stat and finddata structures for 64-bit. 2009-05-23 11:57:12 +02:00
Alexandre Julliard 4a7b3460ef msvcrt: Add explicit 32- and 64-bit versions of the utime functions. 2009-05-23 11:12:17 +02:00
Alexandre Julliard 1c91d54503 msvcrt: Don't try to duplicate invalid handles. Don't reset std handles if we didn't set them. 2009-02-18 14:44:17 +01:00
Michael Stefaniuc 9d4c9a0cdd msvcrt: Remove superfluous pointer casts. 2009-01-29 14:06:15 +01:00
Dan Kegel 7f3c70c52f msvcrt: Remove CRs earlier in ascii mode in fseek, too. 2009-01-29 12:21:11 +01:00
Dan Kegel 5bf1ae82f1 msvcrt: _flsbuf zeroes _cnt. 2009-01-29 12:20:44 +01:00
Hans Leidekker d2a383b658 msvcrt: Forward ANSI open functions to their Unicode counterparts instead of the other way around. Implement _wfreopen. 2009-01-19 14:22:57 +01:00
Dan Kegel ebe4a9e321 msvcrt: Remove CRs earlier in ascii mode. 2009-01-19 13:36:26 +01:00
Alexandre Julliard dd34f924be msvcrt: Convert the open functions to use MS ABI varargs. 2009-01-03 11:38:25 +01:00
Alexandre Julliard 07ca8f4f8f msvcrt: Convert all the printf functions to use MS ABI varargs. 2009-01-03 11:38:25 +01:00
Dan Kegel 72ffe1da67 msvcrt: fread: Exhaust buffered data before using unbuffered data in ascii mode. 2008-12-16 14:23:40 +01:00
Alexandre Julliard b19913ac70 msvcrt: Add a few more *_func functions to replace the __p_* ones. 2008-12-15 16:03:32 +01:00
Alexandre Julliard 4305e6d119 msvcrt: Use iob_func instead of p__iob on non-x86. 2008-12-12 10:19:55 +01:00
Alexandre Julliard d8ab5a14aa msvcrt: Use intptr_t or size_t instead of long where appropriate. 2008-12-12 10:19:55 +01:00
Francois Gouget e766985b20 msvcrt: Fix the permissions returned by fstat*() (with test). 2008-12-10 10:47:34 +01:00
Andrew Talbot 4c3d27dfee msvcrt: Sign-compare warnings fix. 2008-10-22 13:54:53 +02:00
Michael Karcher 5f2159e806 msvcrt/file: stdio should clamp characters to 8 bits. 2008-08-19 13:04:44 +02:00
Alexandre Julliard 9c29dbd987 Avoid exporting common symbols since that's broken on Mac OS X. 2008-07-21 14:47:55 +02:00
Alexandre Julliard b43fd31287 msvcrt: Rename a few functions to avoid conflicts with Windows headers. 2008-04-29 20:18:19 +02:00
Erik de Castro Lopo 60501aa93e msvcrt: Clear end-of-file flag on fseek. 2008-04-09 11:43:35 +02:00
Andrew Talbot 32d7a9e668 msvcrt: Assign to structs instead of using memcpy. 2008-03-07 11:01:07 +01:00
James Hawkins eedfacdfe7 janitorial: Remove links to any microsoft site. 2008-03-01 12:04:03 +01:00
Dan Kegel 316869b273 msvcrt: Fix EOF behavior on read from pipe or console.
The canonical way to detect EOF on read is when you request more than
zero bytes, but zero bytes come back.  Switching to this method seems
to handle a few problem cases better.  Also handle ERROR_BROKEN_PIPE
properly just in case.
2008-02-12 22:35:20 +01:00
Andrew Talbot edaa0fbc13 msvcrt: Remove unneeded cast. 2007-12-24 13:30:20 +01:00
Dan Kegel 56eb6f6730 msvcrt: Fix ^Z handling in text mode. 2007-10-09 11:39:57 +02:00
Dan Kegel 4cd3a16f18 msvcrt: Improve CR CR LF handling. 2007-10-05 10:33:27 +02:00
Hans Leidekker 1efae756c3 msvcrt: Implement _wspawnv{, e, p, pe}. 2007-09-24 14:38:53 +02:00
Tijl Coosemans 6bbd3cacb8 msvcrt: Resolve symbols clashes with FreeBSD libc. 2007-09-19 15:01:33 +02:00
Michael Stefaniuc d7d40b7dd3 msvcrt: Remove superfluous casts of void pointers to other pointer types. 2007-07-04 12:06:58 +02:00
Michael Stefaniuc ec4936a6a3 msvcrt: Do not use wide character constants. 2007-06-25 11:43:58 +02:00
Francois Gouget cf218621fd msvcrt: When operating on a closed pipe, read() should return 0, not -1.
Add tests to make sure read() and fread() work right on closed pipes.
2007-05-22 12:01:35 +02:00
Andrew Talbot 9069577cd0 msvcrt: Exclude unused headers. 2007-05-15 12:19:12 +02:00
Jan Zerebecki 3b32ae2a54 msvcrt: Add DebugInfo to critical sections. 2007-03-12 13:38:22 +01:00
Damjan Jovanovic 2705d78876 msvcrt: Fix fstat's handling of pipes and char devices.
For pipes/char devices, st_dev and st_rdev should be the fd, st_nlink
is always 1, and st_mode is S_IFIFO and S_IFCHR respectively.
Added tests to prove the new behaviour right.
2007-02-16 13:13:37 +01:00
Damjan Jovanovic 7ecc283bd9 msvcrt: Implemented stat64, wstat64 and fstat64.
Change all other variations of stat use the stat64 family, since it is
the most general.
2007-02-14 12:31:14 +01:00
Alexandre Julliard 2851b31f4c msvcrt: Implement fopen/wfopen on top of fsopen/wfsopen instead of the other way around. 2007-02-07 13:25:29 +01:00
Eric Pouech 8333cf88d8 msvcrt: Fix the internal flag computation for _open_osfhandle. 2007-01-23 13:05:52 +01:00
Francois Gouget aab5e5856e Don't put single quotes around '%s' when using the debugstr_*() functions. 2007-01-18 12:55:50 +01:00
Andrew Talbot 55f25b712d msvcrt: Cast-qual warnings fix. 2006-11-06 15:39:55 +01:00
Louis. Lenders 32ffc7cb8a msvcrt: Add stub for _setmaxstdio + tiny test. 2006-10-31 11:46:20 +01:00
Duane Clark b4c1c67ea4 msvcrt: Fix fread on large buffers in ascii mode. 2006-10-27 12:30:24 +02:00
Louis. Lenders a5e6c89dcf msvcrt: Add stub for _getmaxstdio. 2006-10-18 12:35:40 +02:00
Markus Amsler 9ae995f674 msvcrt: Fix fread eof handling. 2006-10-13 11:20:40 +02:00
Markus Amsler fdd61a7a35 msvcrt: fread: Fill buffer on small reads. 2006-10-13 11:20:35 +02:00
Michael Stefaniuc 6520ee04c8 msvcrt: Win64 printf format warning fixes. 2006-10-04 09:58:47 +02:00
Duane Clark 9a71b483d3 msvcrt: fgetc needs to use unsigned parameters.
Spotted by and adapted from test written by Tobias Ringström.
2006-09-26 11:41:25 +02:00
Andrew Talbot c5df5717e9 msvcrt: Cast-qual warnings fix. 2006-09-20 12:23:32 +02:00
Duane Clark 4d3952f3dc msvcrt: In text mode a ctrl-z signals EOF.
Spotted by David Hagood with test suggested by Dan Kegel.
2006-08-09 17:33:23 +02:00
Michael Stefaniuc 243a3e4107 msvcrt: Remove redundant NULL checks before MSVCRT_free. 2006-08-09 11:21:07 +02:00
Duane Clark bc194793a7 msvcrt: Fix fgetwc/s in binary mode. 2006-07-31 21:44:17 +02:00
Duane Clark 5c4b18a931 msvcrt: Remove read_i loop and fix fread. 2006-07-31 21:43:01 +02:00
Duane Clark 88aeeb9fd8 msvcrt: Fix _getw. 2006-07-31 11:15:21 +02:00
Duane Clark b44ea8084d msvcrt: Fix fread. 2006-07-31 11:15:21 +02:00
Duane Clark b37b967add msvcrt: Fix _read and fgetc. 2006-07-31 11:15:21 +02:00
Alexandre Julliard 24beabfd4e msvcrt: Explicitly specify CDECL calling convention on exported functions. 2006-06-13 11:40:23 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
qingdoa daoo 4f7adfb04a msvcrt: Don't duplicate handle in _get_osfhandle. 2006-05-08 17:40:09 +02:00
Eric Pouech 819565be21 msvcrt: IO init.
Make sure, when copying handles from std ones (when no io info is
inherited from parent) to create inheritable handles (spotted by
qingdao daoo).
2006-04-11 12:38:23 +02:00
Alexandre Julliard 19a088202a msvcrt: Fix fflush() of files opened for read.
Some apps, for no particular reason, call fflush() on files opened for
read.  This keeps them from tripping over their shoelaces.
2006-03-27 11:30:50 +02:00
Peter Beutner 72017cc9ab msvcrt: Correctly set EOF flag in fread().
Setting the EOF flag only if _read() returns zero is not enough as we
could also read something AND hit the end of file.
_read() already sets another internal EOF flag, so just use this too.
Removing todo_wine from the test case.
2006-02-17 17:38:03 +01:00
Peter Beutner 58d3f14514 msvcrt: Fix use of uninitialized variable. 2006-02-17 17:37:14 +01:00
Uwe Bonnes b53ed5866d msvcrt: In _mktemp sixth generated charater always starts with 'a'. 2006-02-10 15:52:47 +01:00
Alexandre Julliard a17b2c1cd2 msvcrt: Use the msvcrt version of printf everywhere. 2006-01-24 12:21:58 +01:00
Sasha Slijepcevic 736cd60340 msvcrt: In _tempnam, if TMP is set, it has a precedence over the
parameter dir.
2006-01-18 14:22:27 +01:00
Saulius Krasuckas 5a10c37dba Fix _fcloseall() return value.
Improve some trace messages.
Add tests for fopen(), fclose(), _fcloseall().
Stricten some checks of _unlink().
2005-11-16 11:47:51 +00:00
Vitaliy Margolen a6a5fb7a70 Fix initial position for files opened with O_APPEND flag. 2005-10-07 15:01:15 +00:00
Francois Gouget c63b85b866 Make it clear the empty body sections are not accidental. 2005-09-26 09:54:47 +00:00
Mike McCormack 6dc69f5f54 Fix gcc 4.0 warnings. 2005-09-02 12:26:21 +00:00
Felix Nawothnig 30e248ff90 Allow reading 0 bytes in fread. 2005-07-10 17:46:08 +00:00
Paul Rupe 45f1b06b94 Make ungetc(EOF) a no-op. 2005-06-25 17:58:19 +00:00
Uwe Bonnes dc920056b1 Correct return value of fsetpos. 2005-05-16 08:50:28 +00:00
894c1364d4 Flush output buffers from _close() rather than MSVCRT_fclose(). 2005-05-12 09:55:02 +00:00
759263042e Return ENOENT rather than EBADF from MSVCRT_fopen() when file doesn't
exist.
2005-05-05 16:48:28 +00:00
Hans Leidekker a19bf290f0 Implement and test _chsize. 2005-03-31 19:06:10 +00:00
Jason Edmeades 9b527d4953 Make msvcrt printf use the internal routines which understand %S and
%C.
2005-03-07 11:00:46 +00:00
Francois Gouget fbb3343547 Assorted spelling fixes. 2005-03-02 13:53:50 +00:00
Bill Medland 1953a1ed2d Only report the unsupported flags.
Keep quiet about hints.
2005-01-10 14:28:21 +00:00
Lionel Ulmer 66725349d5 Handle buffering in fgetpos / fsetpos. 2005-01-04 20:37:54 +00:00
Juan Lang 9b6c0eff37 - make file functions (mostly) thread-safe
- update a couple traces
2004-12-14 11:59:43 +00:00
Rein Klazes 03d9cf286e - implement __pioinfo, __badioinfo and _adjust_fdiv
- remove all stubs of data item from the spec file, those actually may
  hide problems.
2004-12-10 15:28:25 +00:00
Juan Lang 1e23777ae5 - implement _dup, _dup2, and _pipe
- make max file descriptors 2048 to match MS
- increase max file streams to match
2004-12-09 16:51:26 +00:00
Juan Lang b100339e2f Flush file in fputc when character is '\n'. 2004-12-07 17:05:08 +00:00
Juan Lang 4120647ae7 Set st_mode bits in _fstati64. 2004-12-06 16:14:09 +00:00
Tony Lambregts 2dec525020 Fix up init_fp test for freopen. 2004-11-03 22:17:05 +00:00
Hans Leidekker 9ec800fd6d Prefix _fsopen with MSVCRT_ to avoid collision with MinGW header.
Typo fix.
2004-10-14 00:26:39 +00:00
Hans Leidekker fe442b21f7 Fix signed/unsigned comparison warnings. 2004-09-08 01:23:57 +00:00
Eric Pouech 0bfb1cbc6b - msvcrt: the file descriptors are now inherited between parent/child
processes
- kernel32.CreateProcess: make use of the *reserved2 fields for
  C-RunTime data inheritance
2004-09-03 01:05:30 +00:00
Dimitrie O. Paun 0377462460 Split the MSVCRT implementation headers from the public headers.
Fix some naming conventions aberrations.
Add tests to ensure consistency between the two sets of symbols.
2004-06-25 01:19:15 +00:00