Commit Graph

148 Commits

Author SHA1 Message Date
Iván Matellanes 4b11bd8083 msvcirt: Simplify some constructors and assignments.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:20:57 +09:00
Iván Matellanes 346a64c089 msvcirt: Implement iostream assignment operators.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:20:54 +09:00
Iván Matellanes 7de6bca9d2 msvcirt: Implement iostream constructors/destructors.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:20:52 +09:00
Iván Matellanes adf3763e46 msvcirt: Add stub for class iostream.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:20:50 +09:00
Iván Matellanes a29ff2caca msvcirt: Initialize do_lock on ios copy constructor.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-09 22:00:00 +09:00
Iván Matellanes 4b603251b2 msvcirt: Implement istream_withassign copy constructor.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-09 21:59:59 +09:00
Iván Matellanes 3ecb295e42 msvcirt: Add a partial implementation of class istream_withassign.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-09 21:59:59 +09:00
Iván Matellanes 8d3a30c626 msvcirt: Implement ostream_withassign copy constructor.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:53 +09:00
Iván Matellanes 4f6f2eb91b msvcirt: Add a partial implementation of class ostream_withassign.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:50 +09:00
Iván Matellanes 4c17eda4a2 msvcirt: Implement istream::operator>> for streambufs.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:16 -05:00
Iván Matellanes 9736024e99 msvcirt: Implement istream::operator>> for floats.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:16 -05:00
Iván Matellanes d8bb77d842 msvcirt: Implement istream::operator>> for integers.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:16 -05:00
Iván Matellanes 605f7a45da msvcirt: Implement istream::operator>> for strings.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:16 -05:00
Iván Matellanes 0aefe854d1 msvcirt: Implement istream::operator>> for characters.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-02 09:08:42 -05:00
Iván Matellanes 59f232e1c1 msvcirt: Add stubs for istream::operator>>.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-02 09:08:40 -05:00
Iván Matellanes d420bf18c0 msvcirt: Get rid of specific functions for signed and unsigned chars.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-25 23:15:47 +09:00
Iván Matellanes 681e905b6e msvcirt: Implement istream::ws.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 23:36:06 +09:00
Iván Matellanes ae5343bd97 msvcirt: Implement istream::getdouble.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-21 23:36:05 +09:00
Iván Matellanes 21ea9f0efb msvcirt: Implement istream::getint.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 22:51:39 +09:00
Iván Matellanes c484ee409f msvcirt: Implement istream::tellg.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 22:51:37 +09:00
Iván Matellanes 1235aa5d1b msvcirt: Implement istream::sync.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 22:51:35 +09:00
Iván Matellanes 3c9fd38283 msvcirt: Implement istream::seekg.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 22:51:33 +09:00
Iván Matellanes e6be6283b6 msvcirt: Implement istream::read.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 09:52:18 +09:00
Iván Matellanes 25a02cc4a9 msvcirt: Implement istream::putback.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 09:52:15 +09:00
Iván Matellanes 7fff7ec8bf msvcirt: Implement istream::peek.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 09:52:13 +09:00
Iván Matellanes 31e2d23b46 msvcirt: Implement istream::ignore.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 09:52:10 +09:00
Iván Matellanes a7db5514e5 msvcirt: Implement istream::getline.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 09:52:06 +09:00
Iván Matellanes 5c691f3f09 msvcirt: Implement istream::get for streambufs.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 20:48:50 +09:00
Iván Matellanes a3313793e0 msvcirt: Implement istream::get for single characters.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 20:48:47 +09:00
Iván Matellanes 14722ba20a msvcirt: Implement istream::get for strings.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 20:48:45 +09:00
Iván Matellanes 3a4dd04b11 msvcirt: Implement istream::isfx.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 19:56:30 +09:00
Iván Matellanes eb91e1c677 msvcirt: Implement istream::ipfx.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 19:56:27 +09:00
Iván Matellanes a7d22c2ec5 msvcirt: Implement istream::gcount.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 19:56:23 +09:00
Iván Matellanes 2f698f6392 msvcirt: Implement istream::eatwhite.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 19:56:19 +09:00
Iván Matellanes a035f67cf5 msvcirt: Implement istream constructors/destructors.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 19:56:14 +09:00
Iván Matellanes db90b19a62 msvcirt: Add stub for class istream.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 19:56:07 +09:00
Iván Matellanes 5101a90bca msvcirt: Reset the pointers on file sync in most cases.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-14 22:51:49 +09:00
Iván Matellanes 46978629fd msvcirt: Cast to unsigned char before promotion to int.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 19:57:12 +09:00
Iván Matellanes 3be6ac0d33 msvcirt: Set the error flag in writepad without locking.
writepad() is always called between opfx() and osfx(), so the ios object is already locked.

Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 22:04:32 +09:00
Iván Matellanes 38fb1062da msvcirt: Implement ostream manipulators.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 23:55:40 +09:00
Iván Matellanes 2cb786b6a0 msvcirt: Implement ostream::operator<< for streambuf.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 23:55:36 +09:00
Iván Matellanes 7ccc6338bc msvcirt: Implement ostream::operator<< for pointers.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 23:55:33 +09:00
Iván Matellanes e4df032cce msvcirt: Implement ostream::operator<< for floats.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 23:55:29 +09:00
Iván Matellanes c969efcaf2 msvcirt: Implement ostream::operator<< for integers.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 23:55:26 +09:00
Iván Matellanes 65935c4c88 msvcirt: Implement ostream::operator<< for strings.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 23:55:22 +09:00
Iván Matellanes 81cf0b2c48 msvcirt: Implement ostream::operator<< for characters.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 23:55:08 +09:00
Iván Matellanes faf7a2701d msvcirt: Add stubs for ostream::operator<<.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 00:58:55 +09:00
Iván Matellanes 025c543442 msvcirt: Fix implementation of strstreambuf::underflow.
Spotted while testing for ostream printing.

Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:57 +09:00
Iván Matellanes d5f445511e msvcirt: Implement ostream::writepad.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:42:41 +09:00
Iván Matellanes 3f32455f01 msvcirt: Implement ostream::tellp.
Signed-off-by: Iván Matellanes <matellanes.ivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:42:38 +09:00