Commit Graph

181 Commits

Author SHA1 Message Date
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
Uwe Bonnes f7e9e5b788 Fixed typo. 2004-05-27 20:01:34 +00:00
Alexandre Julliard adc86dccaa Fixed copy/paste bug in previous change. 2004-05-13 00:23:25 +00:00
Eric Pouech bcc2a5c540 - rewrote the file code so that streams manage low level file desc
(the code was written the other way around)
- reworked the flag handling code (now the stream._flag is closer to
  what MS does)
- simplified temp files handling by using FILE_FLAG_DELETE_ON_CLOSE in
  CreateFile
- fixed a couple of bugs
2004-05-12 00:12:26 +00:00
Hans Leidekker 821f4775a3 - Prefix many more functions, types, structs, etc. with MSVCRT_.
- Correct prototypes for _memccpy()/_memicmp().
- "define before use" reordering in file.c.
- Use the new math.h/float.h.
2004-03-16 19:17:11 +00:00
Alexandre Julliard c042e13ef6 Fixed varargs handling in the scanf functions (spotted by Eric
Pouech).
2004-02-19 01:13:12 +00:00
Alfons Hoogervorst bfc4044511 Fix infinite loop in _flushall. 2004-02-09 20:49:34 +00:00
Alexandre Julliard dec198afe0 Implemented the remaining 64-bit file functions, and added a few other
functions and exported variables.
Removed the almost empty lconv.c file.
2004-01-13 05:45:05 +00:00
Francois Gouget 640cc3f3e1 Assorted spelling fixes. 2004-01-06 22:08:33 +00:00
Ulrich Czekalla 736d96b5b3 Duplicate stdin/stdout handles to avoid closing them when library is
unloaded.
2003-10-31 04:17:45 +00:00
Pavel Roskin 6d6d06a8dc Make MSVCRT__sopen() complain louder about unknown oflags, but not
about _O_WRONLY.
MSVCRT_fopen() should pass third argument to _open() because it may
set _O_CREAT.
2003-10-24 04:21:09 +00:00
Pavel Roskin 9661d05b4e MSVCRT_tmpnam(): complete rewrite. Use the same names as the native
version.  Use the caller-supplied buffer if possible.
2003-10-24 00:23:51 +00:00
Rolf Kalbermatter 76f13deb26 Use INVALID_FILE_ATTRIBUTES to test for failure of
GetFileAttributesA/W and not -1 or 0xFFFFFFFF.
2003-10-16 19:12:49 +00:00
Daniel Marmier f95be92d24 Fixed warnings with gcc option "-Wwrite-strings". 2003-10-15 03:35:54 +00:00
Uwe Bonnes 7b8b62e61a fget(w)s(): Don't drop characters when buffer is not large enough. 2003-10-07 05:22:04 +00:00
Uwe Bonnes 16fa009085 _write(): Don't fragment WriteFile() for TEXT mode write. 2003-10-07 04:01:28 +00:00
Uwe Bonnes 6fbcacbb92 _read(): In _O_TEXT mode make Readfile calls in chunks as big as
possible.
2003-10-07 03:33:58 +00:00
Alexandre Julliard 2470af6213 _tempnam and _wtempnam should not create the temp file (reported by
Wim Vanderbauwhede).
2003-09-27 02:45:39 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Adam Gundy 9ea3c2d3ee _open_osfhandle is expected to take the absence of either _O_TEXT or
_O_BINARY to mean _O_BINARY.
2003-05-08 21:02:31 +00:00
Andreas Mohr 51c38cc729 Fix blatantly wrong SetFilePointer() calls. 2003-04-14 21:33:49 +00:00
Adam Gundy 2f5e5f3d29 MSVCRT_fclose() mustn't use the _flag field from the file structure
after _close() has been called.
When _open_osfhandle() is used by MFC's CStdioFile, it expects write
access even though it doesn't set the necessary flag bit.
2003-03-30 03:06:30 +00:00
Uwe Bonnes f540ea642e Rough implementation of _O_TEXT/_O_BINARY translation by doing single
byte read/writes in _O_TEXT mode and CR/LR handling.
fput/getwc must read multibyte characters in _O_TEXT.
Added test cases for _O_TEXT/_O_BINARY file handling and fgetws.
2003-02-19 22:09:33 +00:00
Dimitrie O. Paun 13098ea188 Create stubs for chsize, dup, and dup2. 2003-01-11 21:01:04 +00:00
Alexandre Julliard 5f31b32946 Use MSVCRT_wchar_t instead of WCHAR so that the implementation matches
the prototypes.
2002-12-19 04:21:30 +00:00
Alexandre Julliard 3f5ff2fba2 Avoid including other headers from the msvcrt headers, duplicate some
definitions instead like Windows does.
Always define wchar_t (suggested by Dimitrie O. Paun), and use wchar_t
everywhere instead of WCHAR to avoid depending on Windows headers.
2002-12-18 20:17:20 +00:00
Bill Currie c78902221f fdopen: don't rewind the file after creating the FILE* handle. Added
unit test for that.
2002-12-17 04:18:07 +00:00
Stefan Leichter a5d7fbfb10 Converted implementation of _lseek to _lseeki64, implemented _lseek by
calling _lseeki64.
2002-11-25 20:50:01 +00:00
Stefan Leichter b88a9d5399 Converted implementation of _stat and _fstat to _stati64 and
_fstati64.
Implemented _stat/_fstat by calling _stati64/_fstati64.
2002-11-25 02:44:34 +00:00
Michael Stefaniuc 789b4b4204 Compile the msvcrt dll with -DSTRICT. 2002-10-25 03:12:01 +00:00
Martin Wilck 94638aa276 MSVCRT needs a public errno.h file. 2002-09-17 18:32:53 +00:00
Martin Wilck 27a91c782e Fix MoveFileEx() flags in MSVCRT rename()/_wrename(). 2002-09-16 22:39:50 +00:00
Alexandre Julliard 1668870f38 Fixed warnings caused by new winternl.h. 2002-09-12 22:28:01 +00:00
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Daniel Gudbjartsson 42c74d6454 Combined the implementation of all the scanf's in a single place.
Added implementations of fwscanf, swscanf, wscanf and sscanf.
Corrected the declaration of swscanf.
Added implementation of the l, h, L and w prefixes.
Added implementation of the c, C, s, S and n types.
2002-08-17 01:22:00 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Alexandre Julliard 4c5d562c30 Add MSVCRT prefix to _stat and _fstat (based on a patch by Rafael
Kitover).
2002-07-31 20:04:57 +00:00
Alexandre Julliard 44b4235af2 Fixed per-thread data handling.
Made terminate and unexpected function pointer per-thread.
Added set_se_translator.
2002-07-19 03:24:50 +00:00