ObjFW  History of src/OFStdIOStream_Win32Console.m of 5a31a537a11f7b25

History of file src/OFStdIOStream_Win32Console.m at check-in 5a31a537a11f7b25

2019-06-17
02:33
Deleted: Remove underscores from class names check-in: [17d57e01ff] user: js, branch: trunk, size: 0
2019-03-24
13:19
Derive of_std{in,out,err} from std{in,out,err}

Previously, this just assumed the existance of file descriptors 0, 1 and
2 - however, in GUI applications on Windows, these were missing when not
started from a console. file: [7e7d715431] check-in: [0f8a72d43c] user: js, branch: trunk, size: 8746 [annotate] [blame] [check-ins using] [diff]

2019-03-09
10:48
Several minor fixes file: [4abac542f9] check-in: [c1e949a8c6] user: js, branch: trunk, size: 8698 [annotate] [blame] [check-ins using] [diff]
2019-03-08
00:35
Use dot syntax file: [801fb56bc9] check-in: [bceb7ed4c9] user: js, branch: trunk, size: 8692 [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
Update copyright file: [8796f50f42] check-in: [0509d7a844] user: js, branch: trunk, size: 8700 [annotate] [blame] [check-ins using] [diff]
2018-02-25
04:31
Reintroduce of_char{16,32}_t

There is no reliable way to check if C++ already defined those, as Clang
now defines char{16,32}_t even when it is not in C++ 11 mode. So we
cannot check if we are not in C++ 11 and then define them and otherwise
rely on the C++ 11 types. file: [24ecc550f0] check-in: [505137f25f] user: js, branch: trunk, size: 8694 [annotate] [blame] [check-ins using] [diff]

2018-01-03
19:49
Update copyright notice file: [07af5c7a6d] check-in: [7e5c81e186] user: js, branch: trunk, size: 8676 [annotate] [blame] [check-ins using] [diff]
2017-10-05
21:19
OFStdIOStream_Win32Console: Fix wrong return file: [ddf6ede371] check-in: [46ebdddf8f] user: js, branch: trunk, size: 8653 [annotate] [blame] [check-ins using] [diff]
2017-09-24
12:24
OFStream: Add support for async writes file: [9bf00d9f6c] check-in: [481225349f] user: js, branch: trunk, size: 8651 [annotate] [blame] [check-ins using] [diff]
2017-07-22
20:50
Split OFDataArray into OFData and OFMutableData file: [2cf46b37b4] check-in: [c8f7b90082] user: js, branch: trunk, size: 8462 [annotate] [blame] [check-ins using] [diff]
2017-06-12
22:29
OFWriteFailedException: Add -[bytesWritten]

This allows retrieving the number of bytes already written before the
write failed, allowing to retry without writing data that has already
been written. file: [451d779be8] check-in: [2ae01218ef] user: js, branch: trunk, size: 8471 [annotate] [blame] [check-ins using] [diff]

2017-06-05
17:36
Clean up exceptions a little

This removes several initializers that omitted the errNo. Removing those
forces to think about whether there is a meaningful errNo to set instead
of just omitting it. file: [e75a0d88c9] check-in: [4f36894ce7] user: js, branch: trunk, size: 8084 [annotate] [blame] [check-ins using] [diff]

2017-05-21
21:28
Prefix private methods with of_ instead of OF_

This matches Apple's style. file: [b94d48eb9c] check-in: [6b77a5dd8b] user: js, branch: trunk, size: 8011 [annotate] [blame] [check-ins using] [diff]

2017-05-07
21:25
Use char{16,32}_t instead of of_char{16,32}_t file: [877aa024e4] check-in: [37d2a81754] user: js, branch: trunk, size: 8011 [annotate] [blame] [check-ins using] [diff]
20:10
Small code style change

Casts are now written like types in variable declarations. file: [7f3fc13f71] check-in: [4af49a13c3] user: js, branch: trunk, size: 8029 [annotate] [blame] [check-ins using] [diff]

2017-02-04
17:45
Fix typos in comments and strings found by aspell file: [7220727656] check-in: [5a31a537a1] user: js, branch: trunk, size: 8027 [annotate] [blame] [check-ins using] [diff]
2017-01-09
17:36
Update copyright

Forgot to add 2017, even though I already did quite some changes in
2017. file: [b6e40ac9ff] check-in: [44f45c2e35] user: js, branch: trunk, size: 8026 [annotate] [blame] [check-ins using] [diff]

2016-05-28
14:22
OFStdIOStream_Win32Console: Add explicit casts file: [64a809a602] check-in: [9ad332a3ea] user: js, branch: trunk, size: 8020 [annotate] [blame] [check-ins using] [diff]
2016-03-13
20:29
OFStdIOStream_Win32Console: Small read fix file: [856da3e285] check-in: [976162aa79] user: js, branch: trunk, size: 7853 [annotate] [blame] [check-ins using] [diff]
20:04
OFStdIOStream_Win32Console: Use U+FFFD, not U+FFFE

U+FFFD is for unrepresentable characters, not U+FFFE. file: [c7b07d3dc1] check-in: [9d70e660ea] user: js, branch: trunk, size: 7841 [annotate] [blame] [check-ins using] [diff]

19:33
OFStdIOStream_Win32Console: Improve writing

When writing an incomplete surrogate, it now writes everything up to
that incomplete surrogate, remembers the incomplete surrogate and writes
it as soon as the surrogate is completed by a following write. file: [c806288ec6] check-in: [3a0fdb6701] user: js, branch: trunk, size: 7841 [annotate] [blame] [check-ins using] [diff]

11:19
Change of_string_utf8_decode() API

It now returns <= 0 on error, with negative values being the number of
bytes it would have needed * -1.

This can be used to detect cut off and how many bytes are missing. file: [f55d77f8b8] check-in: [5e2ef97c35] user: js, branch: trunk, size: 6293 [annotate] [blame] [check-ins using] [diff]

10:24
OFStdIOStream_Win32Console: Improve reading

On reads, surrogates that have been cut off are now properly handled. file: [88dea4ced5] check-in: [566d4df603] user: js, branch: trunk, size: 6260 [annotate] [blame] [check-ins using] [diff]

2016-03-12
20:28
Added: Properly handle UTF-8 in Win32 console

The previous way was to set the codepage to UTF-8, however, this does
not work properly on some versions of Windows.

Instead, this catches reads / writes on of_std* on the lowlevel,
interprets it as UTF-8, converts it to / from UTF-16 and then uses
ReadConsoleW() / WriteConsoleW().

Surrogates being cut in the middle is not properly handled yet, this
will be implemented in a follow up commit. file: [7d8639b924] check-in: [3e1b6bccbc] user: js, branch: trunk, size: 5464 [annotate] [blame] [check-ins using]