ObjFW  History of src/OFStdIOStream.m of 322bbaf8e97442d4

History of the file that is called src/OFStdIOStream.m at check-in 322bbaf8e97442d4

2024-05-05
19:04
[4854e57444] part of check-in [1c2fe75e6e] OFStdIOStream: Add special case for column 0

Use "\r" instead of the ANSI escape code if the column is 0.

This fixes the output of the tests on 3DS. (check-in: [1c2fe75e6e] user: js, branch: trunk, size: 13633) [annotate] [blame] [check-ins using] [diff]

2024-04-03
02:16
[2edbd17f16] part of check-in [7413a728a7] Change license to LGPLv3 only (check-in: [7413a728a7] user: js, branch: trunk, size: 13579) [annotate] [blame] [check-ins using] [diff]
2024-03-28
14:33
[614b264e14] part of check-in [831e85a953] OFStdIOStream: Handle colors properly on MS-DOS (check-in: [831e85a953] user: js, branch: trunk, size: 13371) [annotate] [blame] [check-ins using] [diff]
2024-03-27
23:45
[2764157a42] part of check-in [943e9c0956] OFStdIOStream: Implement cursor movement on MS-DOS (check-in: [943e9c0956] user: js, branch: trunk, size: 11444) [annotate] [blame] [check-ins using] [diff]
2024-02-15
22:34
[4e9d096bab] part of check-in [dd7079d092] ObjFWTest: Implement output on Nintendo Switch (check-in: [dd7079d092] user: js, branch: objfwtest, size: 11004) [annotate] [blame] [check-ins using] [diff]
22:13
[637dec590d] part of check-in [b93ad0661b] ObjFWTest: Implement output on Nintendo DS (check-in: [b93ad0661b] user: js, branch: objfwtest, size: 10967) [annotate] [blame] [check-ins using] [diff]
2024-02-14
23:55
[44aae29ab2] part of check-in [12d7d274f1] ObjFWTest: Implement output on Nintendo 3DS (check-in: [12d7d274f1] user: js, branch: objfwtest, size: 10940) [annotate] [blame] [check-ins using] [diff]
22:28
[ca9e9a8b30] part of check-in [87d92e4803] ObjFWTest: Implement output on Wii (check-in: [87d92e4803] user: js, branch: objfwtest, size: 10912) [annotate] [blame] [check-ins using] [diff]
2024-02-03
09:04
[4bd5de9454] part of check-in [881d570d8c] OFColor: Rename +[grey] to +[gray] (check-in: [881d570d8c] user: js, branch: trunk, size: 11322) [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
[b97df9550f] part of check-in [26ddd2e4e4] Update copyright (check-in: [26ddd2e4e4] user: js, branch: trunk, size: 11322) [annotate] [blame] [check-ins using] [diff]
2023-08-30
11:45
[b2df06c961] part of check-in [5ea06b70ce] Merge trunk into branch "amiga-library" (check-in: [5ea06b70ce] user: js, branch: amiga-library, size: 11598) [annotate] [blame] [check-ins using] [diff]
2023-08-05
09:04
[f8e458060e] part of check-in [14c70763b0] Remove hacks in headers for C compatibility

A better approach would probably be to have a separate header which
makes some classes available to pure C. (check-in: [14c70763b0] user: js, branch: trunk, size: 11322) [annotate] [blame] [check-ins using] [diff]

2023-07-15
20:57
[529c4f7d2f] part of check-in [860b0bf1e9] Merge trunk into branch "amiga-library" (check-in: [860b0bf1e9] user: js, branch: amiga-library, size: 11599) [annotate] [blame] [check-ins using] [diff]
2023-06-05
19:40
[3c1f5e2bd8] part of check-in [62d8cbe31f] Fix MorphOS build (check-in: [62d8cbe31f] user: js, branch: trunk, size: 11323) [annotate] [blame] [check-ins using] [diff]
2023-04-10
15:08
[35cce49f46] part of check-in [abbed5c008] Work around newer amiga-gcc defining Class (check-in: [abbed5c008] user: js, branch: trunk, size: 11335) [annotate] [blame] [check-ins using] [diff]
2023-01-06
09:04
[4a2c070d4b] part of check-in [8939cbdb52] Update copyright (check-in: [8939cbdb52] user: js, branch: trunk, size: 11291) [annotate] [blame] [check-ins using] [diff]
2022-11-15
23:09
[9ab60802c8] part of check-in [a151c9797b] Merge trunk into branch "amiga-library" (check-in: [a151c9797b] user: js, branch: amiga-library, size: 11567) [annotate] [blame] [check-ins using] [diff]
2022-11-13
11:58
[f65f83622c] part of check-in [8fbbf1dbea] OFLog: Use ? instead of (nil) for nil programName (check-in: [8fbbf1dbea] user: js, branch: trunk, size: 11291) [annotate] [blame] [check-ins using] [diff]
2022-10-18
22:17
[bc85c7051b] part of check-in [ac19ed9d40] Merge trunk into branch "amiga-library" (check-in: [ac19ed9d40] user: js, branch: amiga-library, size: 11537) [annotate] [blame] [check-ins using] [diff]
2022-07-31
16:48
[ef45e21ee6] part of check-in [abb642bba9] OFStdIOStream: Use OSConsoleWrite() on Wii U (check-in: [abb642bba9] user: js, branch: wii-u, size: 11261) [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
[f006bf536d] part of check-in [1a86b8175b] Update copyright (check-in: [1a86b8175b] user: js, branch: trunk, size: 10143) [annotate] [blame] [check-ins using] [diff]
2021-05-13
15:20
[3842c52bb2] part of check-in [323ec38f36] Add OFLogV() (check-in: [323ec38f36] user: js, branch: trunk, size: 10143) [annotate] [blame] [check-ins using] [diff]
2021-05-09
14:45
[2787693b17] part of check-in [3c88df0ce4] Merge trunk into branch "amiga-library"

All necessary changes to adjust for the changes made in trunk are
included in the merge commit. (check-in: [3c88df0ce4] user: js, branch: amiga-library, size: 10419) [annotate] [blame] [check-ins using] [diff]

2021-04-18
22:56
[a9dd0b73a2] part of check-in [e73c65a849] Rename all symbols marked extern (check-in: [e73c65a849] user: js, branch: new-naming-convention, size: 10052) [annotate] [blame] [check-ins using] [diff]
21:12
[6e155b4549] part of check-in [b06b86d6f9] OF_RETAIN_COUNT_MAX -> OFMaxRetainCount (check-in: [b06b86d6f9] user: js, branch: new-naming-convention, size: 10069) [annotate] [blame] [check-ins using] [diff]
2021-04-17
00:54
[4b65dc7955] part of check-in [3524409dd0] of_point_t -> OFPoint (check-in: [3524409dd0] user: js, branch: new-naming-convention, size: 10072) [annotate] [blame] [check-ins using] [diff]
2021-03-07
20:25
[56aed5bccb] part of check-in [1b82d3bf4f] *.m: Fold methods into one line where it fits (check-in: [1b82d3bf4f] user: js, branch: trunk, size: 10078) [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:06
[470dd5a9cf] part of check-in [27b401c7c2] Update copyright (check-in: [27b401c7c2] user: js, branch: amiga-library, size: 10477) [annotate] [blame] [check-ins using] [diff]
22:04
[4f22007bd2] part of check-in [374e1a1bfa] Update copyright (check-in: [374e1a1bfa] user: js, branch: trunk, size: 10096) [annotate] [blame] [check-ins using] [diff]
2020-07-06
23:50
[73bfd58144] part of check-in [c536c268a0] Merge trunk into branch "amiga-library" (check-in: [c536c268a0] user: js, branch: amiga-library, size: 10566) [annotate] [blame] [check-ins using] [diff]
2020-06-24
22:30
[10bbd8e570] part of check-in [a98ad80cd3] OFStdIOStream: Don't use isatty() on iOS

When having Xcode attached to see the log, isatty() returns true, but
does not handle any control sequences. (check-in: [a98ad80cd3] user: js, branch: trunk, size: 10185) [annotate] [blame] [check-ins using] [diff]

2020-06-21
02:15
[acfa5ef390] part of check-in [9697334084] Make of_std{in,out,err} available in Amiga library

This is done by using functions that return a reference to the variable
and defining of_std{in,out,err} to a call into these functions. (check-in: [9697334084] user: js, branch: amiga-library, size: 10804) [annotate] [blame] [check-ins using] [diff]

2020-06-20
16:38
[3648853d0b] part of check-in [343501981b] OFStdIOStream: Add of_logv()

This is required for the Amiga library. (check-in: [343501981b] user: js, branch: amiga-library, size: 10516) [annotate] [blame] [check-ins using] [diff]

2020-05-28
00:15
[26a72da19c] part of check-in [d5eb0384c5] OFStdIOStream: Add -[hasTerminal] (check-in: [d5eb0384c5] user: js, branch: trunk, size: 10423) [annotate] [blame] [check-ins using] [diff]
2020-05-24
15:54
[0a4af80293] part of check-in [40f58c637b] Add terminal control methods for Windows (check-in: [40f58c637b] user: js, branch: trunk, size: 10300) [annotate] [blame] [check-ins using] [diff]
2020-05-22
22:25
[a1f25bd1bf] part of check-in [f3aa57bcc6] Fix build on AmigaOS and devkitPro (check-in: [f3aa57bcc6] user: js, branch: trunk, size: 10172) [annotate] [blame] [check-ins using] [diff]
2020-05-21
23:18
[8f827abbc3] part of check-in [36960e428a] OFStdIOStream: Add more terminal control methods (check-in: [36960e428a] user: js, branch: trunk, size: 9902) [annotate] [blame] [check-ins using] [diff]
17:58
[d3ca10c178] part of check-in [30d639a494] OFStdIOStream: Add support for setting fg/bg color (check-in: [30d639a494] user: js, branch: trunk, size: 8888) [annotate] [blame] [check-ins using] [diff]
2020-01-14
00:16
[730550a384] part of check-in [3b43d51006] More consistent -[close] behavior

This means refusing to close twice, calling -[close] from -[dealloc] and
not calling -[cancelAsyncRequests].

Calling -[cancelAsyncRequests] in -[close] is too dangerous, as -[close]
gets called by -[dealloc]: If the queue is the last reference to the
object, at the point where -[cancelAsyncRequests] removes it from the
queue, the object will start to deallocate and call into
-[cancelAsyncRequests] again, which is still in the middle of removing
it and now finds itself with an inconsistent state. (check-in: [3b43d51006] user: js, branch: trunk, size: 7419) [annotate] [blame] [check-ins using] [diff]

2020-01-02
01:51
[4ead6e5d4b] part of check-in [c7f0229795] Update copyright (check-in: [c7f0229795] user: js, branch: trunk, size: 7234) [annotate] [blame] [check-ins using] [diff]
2019-08-10
02:06
[eb42ab9d24] part of check-in [3292a6fdbc] Clean up the AmigaOS 4 library mess (check-in: [3292a6fdbc] user: js, branch: trunk, size: 7231) [annotate] [blame] [check-ins using] [diff]
2019-06-17
02:33
[7b4906ae53] part of check-in [17d57e01ff] Remove underscores from class names (check-in: [17d57e01ff] user: js, branch: trunk, size: 7936) [annotate] [blame] [check-ins using] [diff]
2019-04-21
09:58
[29dc6410b2] part of check-in [50a6ffd4b1] Fix compilation on AmigaOS 4 with 53.30 SDK (check-in: [50a6ffd4b1] user: js, branch: trunk, size: 7939) [annotate] [blame] [check-ins using] [diff]
2019-03-24
13:19
[78d2467bd8] part of check-in [0f8a72d43c] 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. (check-in: [0f8a72d43c] user: js, branch: trunk, size: 7919) [annotate] [blame] [check-ins using] [diff]

2019-03-08
00:35
[416043c557] part of check-in [bceb7ed4c9] Use dot syntax (check-in: [bceb7ed4c9] user: js, branch: trunk, size: 7740) [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
[0fdbb22bb2] part of check-in [0509d7a844] Update copyright (check-in: [0509d7a844] user: js, branch: trunk, size: 7744) [annotate] [blame] [check-ins using] [diff]
2018-08-17
01:17
[c5d7e54168] part of check-in [d71abc5366] AmigaOS 4: Do not use libauto

libauto loads the libraries too late. (check-in: [d71abc5366] user: js, branch: trunk, size: 7738) [annotate] [blame] [check-ins using] [diff]

2018-08-16
22:33
[ecf0064eb3] part of check-in [7413f500db] Fix compilation for AmigaOS 4 (check-in: [7413f500db] user: js, branch: trunk, size: 7013) [annotate] [blame] [check-ins using] [diff]
2018-05-26
14:49
[5e211fc7f6] part of check-in [b31bd48f90] Remove #define INTUITION_CLASSES_H hack

This has been fixed upstream in amiga-gcc. (check-in: [b31bd48f90] user: js, branch: trunk, size: 6965) [annotate] [blame] [check-ins using] [diff]

2018-05-13
19:24
[3ca31d2e74] part of check-in [5831626f68] platform.h: Rename OF_AMIGAOS3 to OF_AMIGAOS_M68K

The reason for this is that, in theory, this also supports versions
older than 3. (check-in: [5831626f68] user: js, branch: trunk, size: 7027) [annotate] [blame] [check-ins using] [diff]

2018-04-23
22:19
[6647a44cbe] part of check-in [b16fc262c0] Use more native AmigaOS APIs on AmigaOS 3 (check-in: [b16fc262c0] user: js, branch: trunk, size: 7023) [annotate] [blame] [check-ins using] [diff]
2018-04-22
16:13
[7f1468fef3] part of check-in [fe2cbe0021] runtime: Define BOOL to be the same as bool

As we define the ABI, we can just replace BOOL with bool everywhere,
including in ObjFW itself. For the Apple platforms where BOOL and bool
are different, this is not a problem as BOOL and bool are passed and
returned the same way in the ABI.

This still defines BOOL to bool for compatibility, except on AmigaOS and
Wii, which both have its own BOOL type. (check-in: [fe2cbe0021] user: js, branch: trunk, size: 6965) [annotate] [blame] [check-ins using] [diff]

2018-03-11
00:37
[66757147ba] part of check-in [7a488c3062] OFString: Move path handling into a category

This is the first step to have different versions of those for different
operating systems, rather than #ifdefs everywhere.

This also has the nice side-effect of not having one implementation in
OFString and another one in OFString_UTF8 anymore. The one in OFString
was a generic version, while the one in OFString_UTF8 was one optimized
for UTF-8 strings. Now only the version optimized for UTF-8 strings
exists, as this is by far the most common string implementation used,
and the overhead of converting from something else to UTF-8 is not more
than converting to UTF-32. (check-in: [7a488c3062] user: js, branch: trunk, size: 7002) [annotate] [blame] [check-ins using] [diff]

2018-01-03
19:49
[0a2b2bbcab] part of check-in [7e5c81e186] Update copyright notice (check-in: [7e5c81e186] user: js, branch: trunk, size: 6933) [annotate] [blame] [check-ins using] [diff]
2017-10-17
00:33
[3619228f8c] part of check-in [2f4e0df8be] Do not use implicit method return types

Instead, explicitly declare them, as OF_ASSUME_NONNULL_{BEGIN,END} does
not apply to implicit return types. This means that after this commit,
all init methods have a nonnull return type, as they should have. (check-in: [2f4e0df8be] user: js, branch: trunk, size: 6910) [annotate] [blame] [check-ins using] [diff]

2017-09-24
12:24
[f210109307] part of check-in [481225349f] OFStream: Add support for async writes (check-in: [481225349f] user: js, branch: trunk, size: 6868) [annotate] [blame] [check-ins using] [diff]
2017-06-12
22:29
[cf1f27b3cb] part of check-in [2ae01218ef] 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. (check-in: [2ae01218ef] user: js, branch: trunk, size: 7025) [annotate] [blame] [check-ins using] [diff]

2017-06-05
17:36
[ed0f11c59f] part of check-in [4f36894ce7] 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. (check-in: [4f36894ce7] user: js, branch: trunk, size: 6671) [annotate] [blame] [check-ins using] [diff]

15:51
[fac79ea11f] part of check-in [f9cd4f9cab] OFStream: Don't throw when at end of stream

Instead, let reads return 0 and let writes append after the end. (check-in: [f9cd4f9cab] user: js, branch: trunk, size: 6626) [annotate] [blame] [check-ins using] [diff]

2017-06-04
18:48
[87d19ba681] part of check-in [c9621825fc] Treat MorphOS + ixemul as a separate platform

This reduces the ifdef hell and makes much more sense, as with ixemul,
no native calls are allowed. (check-in: [c9621825fc] user: js, branch: trunk, size: 6784) [annotate] [blame] [check-ins using] [diff]

2017-06-03
16:58
[ac607c5f45] part of check-in [3cba61d694] Make sockets work on MorphOS + libnix (check-in: [3cba61d694] user: js, branch: trunk, size: 7094) [annotate] [blame] [check-ins using] [diff]
15:03
[26c295bea1] part of check-in [cb450cb1bd] Include unistd.h on MorphOS + libnix

It turns out that including unistd.h does work when defining BOOL to
something else. (check-in: [cb450cb1bd] user: js, branch: trunk, size: 7118) [annotate] [blame] [check-ins using] [diff]

2017-05-30
22:01
[f28a278b7e] part of check-in [c5c3df3abe] MorphOS: Name variable handle instead of fd (check-in: [c5c3df3abe] user: js, branch: trunk, size: 7200) [annotate] [blame] [check-ins using] [diff]
2017-05-28
18:57
[1049054022] part of check-in [0dabf9dc62] Separate std{out,err} on MorphOS + libnix (check-in: [0dabf9dc62] user: js, branch: trunk, size: 6438) [annotate] [blame] [check-ins using] [diff]
12:54
[37f14b4e93] part of check-in [4258b6f227] Only use AmigaDOS directly when not using ixemul (check-in: [4258b6f227] user: js, branch: trunk, size: 5422) [annotate] [blame] [check-ins using] [diff]
2017-05-27
14:45
[b0cc705195] part of check-in [614c6678e8] OFStdIOStream: Use AmigaDOS directly on MorphOS

This is necessary for using -noixemul. (check-in: [614c6678e8] user: js, branch: trunk, size: 5341) [annotate] [blame] [check-ins using] [diff]

10:33
[cecae3f90d] part of check-in [d31ec806ef] Add unistd.h wrapper to make things less horrible (check-in: [d31ec806ef] user: js, branch: trunk, size: 4592) [annotate] [blame] [check-ins using] [diff]
10:08
[f40b730d75] part of check-in [ec36a82d68] Make things work with glibc 2.17 and Clang 3.4.2 (check-in: [ec36a82d68] user: js, branch: trunk, size: 4756) [annotate] [blame] [check-ins using] [diff]
2017-05-22
23:31
[2c73c952bc] part of check-in [1287e77e04] Make includes of unistd.h and fcntl.h conditional (check-in: [1287e77e04] user: js, branch: trunk, size: 4778) [annotate] [blame] [check-ins using] [diff]
2017-05-21
21:28
[d6e666357c] part of check-in [6b77a5dd8b] Prefix private methods with of_ instead of OF_

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

2017-05-07
20:10
[5324fa0d07] part of check-in [4af49a13c3] Small code style change

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

2017-01-09
17:36
[ed72626b27] part of check-in [44f45c2e35] Update copyright

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

2016-10-08
15:57
[97ab3c33fb] part of check-in [b317a4d56d] OFStdIOStream: Add -[columns] and -[rows] (check-in: [b317a4d56d] user: js, branch: trunk, size: 4740) [annotate] [blame] [check-ins using] [diff]
2016-09-12
00:27
[9d5e101a97] part of check-in [13f4c6c678] Add OF_DEALLOC_UNSUPPORTED macro (check-in: [13f4c6c678] user: js, branch: trunk, size: 4248) [annotate] [blame] [check-ins using] [diff]
2016-06-07
22:56
[3491f0262a] part of check-in [1de551cb5f] Add support for reusing OFStreams after close

Right now, this is only useful for OFTCPSocket, as this is the only
class so far not establishing the stream in the init method. However,
this adds the general infrastructure to allow reuse to all subclasses of
OFStream. (check-in: [1de551cb5f] user: js, branch: trunk, size: 4304) [annotate] [blame] [check-ins using] [diff]

2016-05-28
11:37
[53b11ea420] part of check-in [e53a4fd61c] Add a reference to OFStdIOStream_Win32Console

This is required for static linking, as otherwise
+[OFStdIOStream_Win32Console load] will not be called. (check-in: [e53a4fd61c] user: js, branch: trunk, size: 4287) [annotate] [blame] [check-ins using] [diff]

2016-03-12
20:28
[e2adf5fa8a] part of check-in [3e1b6bccbc] 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. (check-in: [3e1b6bccbc] user: js, branch: trunk, size: 4066) [annotate] [blame] [check-ins using] [diff]

2016-02-28
15:31
[b1b921ad96] part of check-in [0a001bfd7b] OFStdIOStream: Set codepage to UTF-8 on Windows (check-in: [0a001bfd7b] user: js, branch: trunk, size: 4555) [annotate] [blame] [check-ins using] [diff]
2016-01-03
00:43
[607fc70586] part of check-in [cec0f072f8] Update copyright

While at it, also update the mail address. (check-in: [cec0f072f8] user: js, branch: 0.8, size: 4103) [annotate] [blame] [check-ins using] [diff]

00:41
[03a4b1227f] part of check-in [2a27cf3000] Update copyright

While at it, also update the mail address. (check-in: [2a27cf3000] user: js, branch: trunk, size: 4092) [annotate] [blame] [check-ins using] [diff]

2015-11-29
14:23
[b89433fb35] part of check-in [2aca549d60] Clean up class extensions

Now that we can require GCC >= 4.6, we no longer need to fall back to
using a category on old compilers. (check-in: [2aca549d60] user: js, branch: trunk, size: 4088) [annotate] [blame] [check-ins using] [diff]

2015-10-19
22:15
[18f864f44a] part of check-in [1ba08eebc5] Add platform.h & make platform defines consistent (check-in: [1ba08eebc5] user: js, branch: trunk, size: 4107) [annotate] [blame] [check-ins using] [diff]
2015-10-04
11:30
[8e10193c2f] part of check-in [fc73801932] Better length checks for write / send calls (check-in: [fc73801932] user: js, branch: trunk, size: 4099) [annotate] [blame] [check-ins using] [diff]
2015-02-16
08:39
[a3654b4d40] part of check-in [62e2de30b9] Explicitly pass errno to exceptions

The old behaviour where the exception would access errno directly on
creation of the exception was very fragile. The two main problems with
it were that sometimes it would pick up an errno even though none had
been set and in other cases that when the exception was created errno
had already been overridden.

This also greatly increases errno handling on Win32, especially in
conjunction with sockets. It can still be improved further, though. (check-in: [62e2de30b9] user: js, branch: trunk, size: 4023) [annotate] [blame] [check-ins using] [diff]

2015-01-03
20:57
[ba7c43016e] part of check-in [cfd374b906] Update copyright (check-in: [cfd374b906] user: js, branch: trunk, size: 3789) [annotate] [blame] [check-ins using] [diff]
2014-06-21
21:43
[3cbe48a8b1] part of check-in [13ee56edf3] Move all macros from OFObject.h to macros.h

This means that OFObject.h imports macros.h now, making it unnecessary
to manually import macros.h in almost every file. And while at it, also
import autorelease.h in OFObject.h, so that this doesn't need to be
manually imported in almost every file as well. (check-in: [13ee56edf3] user: js, branch: trunk, size: 3783) [annotate] [blame] [check-ins using] [diff]

2014-05-29
21:27
[13750b442d] part of check-in [d1e559b643] Work around __block being used by old glibc (check-in: [d1e559b643] user: js, branch: trunk, size: 3827) [annotate] [blame] [check-ins using] [diff]
2014-04-26
00:40
[84af7e353c] part of check-in [4e59d2692f] Fix a few issues on LLP64 and Win64

LLP64 was mostly fast enumeration using an unsigned long for the state,
which can't store a pointer or a size_t on LLP64. This is now solved by
either throwing an OFOutOfRangeException if the value of the size_t is
bigger than ULONG_MAX or storing the pointer in the extra field (copied
using memcpy, as it's an array of unsigned long, which again would be
too small to store a pointer).

Win64 was mostly Microsoft not being able to decide whether a length is
a size_t, a DWORD, an int or an unsigned int (thus the different types
in places that seem to be almost the same). But since that would not be
confusing enough, a file descriptor is an int if it's for a file, but a
long long if it is for a socket. But of course, for ReadFile and friends
it's a DWORD instead of an int then. (check-in: [4e59d2692f] user: js, branch: trunk, size: 3662) [annotate] [blame] [check-ins using] [diff]

2014-04-08
16:38
[8d9bbeeba6] part of check-in [f447af977a] runtime/hashtable.m: Move some code around (check-in: [f447af977a] user: js, branch: trunk, size: 3062) [annotate] [blame] [check-ins using] [diff]
2014-01-25
17:39
[5073a1b1d8] part of check-in [8d2a5052fd] Generalize stream / socket related exceptions

This is in preparation for adding UDP sockets, as UDP sockets and TCP
sockets have no common superclass, as one is stream-oriented while the
other is packet-oriented.

Read and write exceptions are for any object now, as they are useful for
a lot more than just for streams, while the others (bind, listen, etc.)
are for any socket now (the type is id in this case, though, as there is
no common superclass). (check-in: [8d2a5052fd] user: js, branch: trunk, size: 3060) [annotate] [blame] [check-ins using] [diff]

2014-01-04
00:24
[8f40232493] part of check-in [3b97fc3cd9] Update copyright. (check-in: [3b97fc3cd9] user: js, branch: trunk, size: 3060) [annotate] [blame] [check-ins using] [diff]
2013-11-23
01:27
[dd795e3790] part of check-in [6e19bd47ee] Add OF_UNRECOGNIZED_SELECTOR. (check-in: [6e19bd47ee] user: js, branch: trunk, size: 3054) [annotate] [blame] [check-ins using] [diff]
01:12
[953debbd4d] part of check-in [35dafd5c57] Add OF_INVALID_INIT_METHOD. (check-in: [35dafd5c57] user: js, branch: trunk, size: 3098) [annotate] [blame] [check-ins using] [diff]
2013-08-15
19:00
[26b8ba6e3e] part of check-in [1d7a1cbca0] Move private methods into private headers. (check-in: [1d7a1cbca0] user: js, branch: trunk, size: 3167) [annotate] [blame] [check-ins using] [diff]
2013-08-13
10:39
[7fe2743d3d] part of check-in [73ae6fa60f] Add a few more instancetypes. (check-in: [73ae6fa60f] user: js, branch: trunk, size: 3062) [annotate] [blame] [check-ins using] [diff]
2013-06-22
12:12
[0fb850ba21] part of check-in [3d16a30f41] Rework exceptions.

This mostly removes the argument for the class in which the exception
occurred. As backtraces were recently added for all platforms, the
passed class does not give any extra information on where the exception
occurred anymore.

This also removes a few other arguments which were not too helpful. In
the past, the idea was to pass as many arguments as possible so that it
is easier to find the origin of the exception. However, as backtraces
are a much better way to find the origin, those are not useful anymore
and just make the exception more cumbersome to use. The rule is now to
only pass arguments that might help in recovering from the exception or
provide information that is otherwise not easily accessible. (check-in: [3d16a30f41] user: js, branch: trunk, size: 3048) [annotate] [blame] [check-ins using] [diff]

2013-04-27
01:26
Added: [f5689e7f1a] part of check-in [085bfc12a0] Add OFStdIOStream.

This is used for of_std{in,out,err} now instead of OFFile. (check-in: [085bfc12a0] user: js, branch: trunk, size: 3105) [annotate] [blame] [check-ins using]