Commit Graph

191 Commits

Author SHA1 Message Date
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 3f59de0faf msvcirt/tests: Remove unnecessary casts.
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:16 +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
Piotr Caban 5c1b944a1c msvcirt/tests: Remove unneeded casts.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 22:03:26 +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
Iván Matellanes d77342ff96 msvcirt: Implement ostream::seekp.
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:35 +09:00
Iván Matellanes c4a5730ec3 msvcirt: Implement ostream::write.
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:31 +09:00
Iván Matellanes e1b3a52902 msvcirt: Implement ostream::put.
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:27 +09:00
Iván Matellanes 28d400be63 msvcirt: Implement ostream::osfx.
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:24 +09:00
Iván Matellanes 327cada0f1 msvcirt: Implement ostream::opfx.
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:21 +09:00
Iván Matellanes 6fedfa6128 msvcirt: Implement ostream::flush.
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:17 +09:00
Iván Matellanes cf1f23379b msvcirt: Implement ostream 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-06-15 20:42:12 +09:00
Iván Matellanes 849163b1ed msvcirt: Add stub for class ostream.
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 00:35:38 +09:00
Iván Matellanes 8852734146 msvcirt: Avoid superfluous comparison in some compilers.
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-03-29 20:22:22 +09:00
Nikolay Sivov 472f4acb06 msvcirt: Use proper printf format for pointers (PVS-Studio).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-13 18:40:33 +09:00
Iván Matellanes b34b65e462 msvcirt: Improve implementation of streambuf::pbackfail.
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>
2015-10-08 20:16:25 +09:00
Iván Matellanes 6aa589e854 msvcirt: Implement stdiobuf::seekoff.
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>
2015-10-08 20:16:18 +09:00
Iván Matellanes 66ff2e3bad msvcirt: Implement stdiobuf::setrwbuf.
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>
2015-10-08 20:16:10 +09:00
Iván Matellanes c5480a8810 msvcirt: Implement stdiobuf::stdiofile.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
2015-10-07 13:00:36 +09:00
Iván Matellanes c16e4f5cc5 msvcirt: Implement stdiobuf::sync.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
2015-10-07 13:00:33 +09:00
Iván Matellanes 7754619128 msvcirt: Implement stdiobuf::underflow.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
2015-10-07 13:00:30 +09:00
Iván Matellanes 608aa13672 msvcirt: Implement stdiobuf::overflow.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
2015-10-07 13:00:27 +09:00
Iván Matellanes a9ad6e88d7 msvcirt: Implement stdiobuf constructors and destructor.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
2015-10-07 13:00:23 +09:00
Iván Matellanes 8f5e817d84 msvcirt: Add stub of class stdiobuf.
Signed-off-by: Iván Matellanes <matellanesivan@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
2015-10-07 13:00:15 +09:00
Iván Matellanes 24d57405ac msvcirt: Implement strstreambuf::seekoff. 2015-10-01 00:02:05 +09:00
Iván Matellanes 60d1d6f595 msvcirt: Implement strstreambuf::overflow. 2015-09-18 15:00:23 +02:00
Iván Matellanes 2f70aba8d9 msvcirt: Implement strstreambuf::underflow. 2015-09-18 15:00:21 +02:00
Iván Matellanes ea953271de msvcirt: Implement strstreambuf::sync. 2015-09-18 15:00:17 +02:00
Iván Matellanes 675ad97a69 msvcirt: Implement strstreambuf::setbuf. 2015-09-18 15:00:15 +02:00
Iván Matellanes 0257ebc838 msvcirt: Implement strstreambuf::doallocate. 2015-09-18 15:00:10 +02:00
Iván Matellanes 222cd629a3 msvcirt: Implement strstreambuf::str. 2015-09-18 15:00:05 +02:00
Iván Matellanes a8b26a96b4 msvcirt: Implement strstreambuf::freeze. 2015-09-18 15:00:00 +02:00
Iván Matellanes aa4e2740b7 msvcirt: Implement strstreambuf constructors and destructor. 2015-09-18 14:59:56 +02:00
Iván Matellanes 37de534352 msvcirt: Add stub of class strstreambuf. 2015-09-18 14:59:49 +02:00
Iván Matellanes d5229aeec5 msvcirt: Implement filebuf::seekoff. 2015-08-17 18:19:28 +09:00
Iván Matellanes 0ed82afe9e msvcirt: Implement filebuf::underflow. 2015-08-17 18:19:24 +09:00
Iván Matellanes ed5f60e46f msvcirt: Implement filebuf::overflow. 2015-08-17 18:19:19 +09:00
Iván Matellanes 5ebf8cfc40 msvcirt: Implement filebuf::sync. 2015-08-17 18:19:16 +09:00
Iván Matellanes 28c61981ad msvcirt: Implement filebuf::setbuf. 2015-08-17 18:19:11 +09:00
Iván Matellanes 43bb816373 msvcirt: Implement filebuf::setmode. 2015-08-17 18:19:07 +09:00
Iván Matellanes cac27a40d8 msvcirt: Allocate a buffer if necessary when a file is opened. 2015-08-17 18:18:31 +09:00
Iván Matellanes d669e74527 msvcirt: Implement filebuf status functions. 2015-08-06 21:05:25 +09:00
Iván Matellanes 95fd3af190 msvcirt: Implement filebuf::open/close. 2015-08-06 21:05:15 +09:00
Iván Matellanes e2659db454 msvcirt: Implement filebuf::attach. 2015-08-05 23:45:37 +09:00
Iván Matellanes 2f702e3dd6 msvcirt: Implement filebuf constructors and destructor. 2015-08-05 23:45:25 +09:00
Iván Matellanes 30e33a406c msvcirt: Add filebuf static fields. 2015-08-05 23:45:21 +09:00
Iván Matellanes aa11357dfa msvcirt: Add stub of class filebuf. 2015-08-05 23:45:11 +09:00
Iván Matellanes 6812bb7469 msvcirt: Add ios instance counter. 2015-07-20 11:41:59 +02:00
Iván Matellanes b6c5bd15c4 msvcirt: Add support for ios state variables. 2015-07-20 11:41:36 +02:00
Iván Matellanes f2037e2e96 msvcirt: Implement ios::bitalloc. 2015-07-20 11:41:19 +02:00
Iván Matellanes 3c5328dca8 msvcirt: Implement ios manipulators. 2015-07-20 11:41:10 +02:00
Iván Matellanes bc90e1c8bc msvcirt: Add ios format flag masks. 2015-07-20 11:41:01 +02:00
Iván Matellanes 19bce9272c msvcirt: Implement ios operators. 2015-07-20 11:40:53 +02:00
Iván Matellanes 8413edb696 msvcirt: Implement ios status-testing functions. 2015-07-20 11:40:48 +02:00
Iván Matellanes 9abffde3bc msvcirt: Implement ios::delbuf. 2015-07-20 11:40:41 +02:00
Iván Matellanes 0fa257924d msvcirt: Implement ios::rdbuf. 2015-07-20 11:40:38 +02:00
Iván Matellanes 5fea620399 msvcirt: Implement ios::tie. 2015-07-20 11:40:34 +02:00
Iván Matellanes c21fa9c532 msvcirt: Implement ios::width. 2015-07-20 11:40:30 +02:00
Iván Matellanes 80f5fd5361 msvcirt: Implement ios::precision. 2015-07-20 11:40:26 +02:00
Iván Matellanes 9b42f88e49 msvcirt: Implement ios::fill. 2015-07-20 11:40:22 +02:00
Iván Matellanes c8368cf43b msvcirt: Implement ios::unsetf. 2015-07-17 19:27:43 +09:00
Iván Matellanes 968d07dd7b msvcirt: Implement ios::setf. 2015-07-17 19:27:38 +09:00
Iván Matellanes 6f89103b72 msvcirt: Implement ios::flags. 2015-07-17 19:27:31 +09:00
Iván Matellanes 277da0ea5d msvcirt: Implement ios static locking. 2015-07-17 19:27:00 +09:00
Iván Matellanes 22f28d2923 msvcirt: Implement ios stream locking. 2015-07-15 23:20:08 +09:00
Iván Matellanes 57fb458774 msvcirt: Implement ios object locking. 2015-07-15 23:19:58 +09:00
Iván Matellanes 9d0b679c1b msvcirt: Implement ios locking control. 2015-07-15 23:19:54 +09:00
Piotr Caban 4406762dc2 msvcirt: Fix leak in ~ios and ios::init implementation. 2015-07-08 19:12:14 +09:00
Iván Matellanes bc01af8f8e msvcirt: Implement ios constructors and assignment. 2015-07-07 14:25:03 +09:00
Iván Matellanes 0dcb382a4e msvcirt/tests: Add initial tests for ios. 2015-07-07 14:24:59 +09:00
Iván Matellanes e2119fb854 msvcirt: Add stub of class ios. 2015-07-07 14:24:45 +09:00
Alexandre Julliard 853d0f34ff msvcirt/tests: Fix comparison with EOL. 2015-07-06 20:08:00 +09:00
Piotr Caban 9249f393c2 msvcirt: Fix ostrstream::ostrstream() constructor stub. 2015-06-29 19:07:55 +09:00
Iván Matellanes 6096dfe6d9 msvcirt: Add implementation of streambuf::dbp. 2015-06-29 19:07:54 +09:00
Iván Matellanes 56f150b1c4 msvcirt: Add implementation of streambuf::sputbackc. 2015-06-29 19:07:54 +09:00
Iván Matellanes 6cca77bf2a msvcirt: Add implementation of streambuf::pbackfail. 2015-06-29 19:07:53 +09:00