ObjFW  All files named "src/OFStreamObserver_poll.m"

History for src/OFStreamObserver_poll.m

2014-01-28
22:50
Deleted: Rename OFStreamObserver -> OFKernelEventObserver (check-in: [96e20b8093] user: js, branch: trunk, size: 0)
2014-01-26
13:32
[247da43586] part of check-in [32ad39007a] Include unistd.h in socket_helpers.h (check-in: [32ad39007a] user: js, branch: trunk, size: 4035) [annotate] [blame] [check-ins using] [diff]
2014-01-25
19:33
[d72695f3f3] part of check-in [81d47f4398] Move socket includes and helpers to separate files

The new file socket.h includes all headers required for sockets on the
used platform, while the file socket_helpers.h defines the BSD API
functions to the platform specific functions if necessary.

This cleans up the classes dealing with sockets a lot and also reduces
code duplication. (check-in: [81d47f4398] user: js, branch: trunk, size: 4056) [annotate] [blame] [check-ins using] [diff]

2014-01-16
23:09
[c4a5405d62] part of check-in [dc31ce3d34] Add of_time_interval_t.

This is used instead for time intervals now instead of doubles. (check-in: [dc31ce3d34] user: js, branch: trunk, size: 4170) [annotate] [blame] [check-ins using] [diff]

2014-01-04
00:24
[01d8b3fa23] part of check-in [3b97fc3cd9] Update copyright. (check-in: [3b97fc3cd9] user: js, branch: trunk, size: 4158) [annotate] [blame] [check-ins using] [diff]
2013-08-15
19:00
[5dd81a0ef7] part of check-in [1d7a1cbca0] Move private methods into private headers. (check-in: [1d7a1cbca0] user: js, branch: trunk, size: 4152) [annotate] [blame] [check-ins using] [diff]
2013-06-22
12:12
[45fcb749cc] 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: 4086) [annotate] [blame] [check-ins using] [diff]

2013-06-11
23:33
[a45ade6207] part of check-in [ffb91daffe] Initial sockets support for the Wii.

Not functional yet due to bugs in the SDK.
Bugs found so far:

* Binding to port 0 fails instead of choosing a free port.
* gethostbyname() does not work for IPs.
* getsockname() is missing.
* struct sockaddr_storage is missing.

I have not decided yet whether I fix those bugs in the SDK (I already
implemented getsockname() and added struct sockaddr_stroage and it seems
to work) or if I work around them in ObjFW. This will mainly depend on
how cooperative the developers of the Wii SDK are. (check-in: [ffb91daffe] user: js, branch: trunk, size: 4109) [annotate] [blame] [check-ins using] [diff]

2013-05-22
18:42
[047427a85c] part of check-in [896084c340] Check for more socket-related headers / functions. (check-in: [896084c340] user: js, branch: trunk, size: 3903) [annotate] [blame] [check-ins using] [diff]
2013-04-30
22:47
[da5230bc72] part of check-in [ab9ad6e515] observeWithTimeout: -> observeForTimeInterval:. (check-in: [ab9ad6e515] user: js, branch: trunk, size: 3875) [annotate] [blame] [check-ins using] [diff]
2013-03-04
17:20
[684851fd9c] part of check-in [c5ef582958] Replace BOOL with bool.

The only places where BOOL is left are those where they are required by
the ABI. (check-in: [c5ef582958] user: js, branch: trunk, size: 3856) [annotate] [blame] [check-ins using] [diff]

2013-02-12
18:22
[1648f30d0f] part of check-in [e40729d406] Prefix all ivars with an underscore. (check-in: [e40729d406] user: js, branch: trunk, size: 3844) [annotate] [blame] [check-ins using] [diff]
2013-01-09
22:24
[5c8293cbf9] part of check-in [813c00ccf0] Update copyright. (check-in: [813c00ccf0] user: js, branch: trunk, size: 3840) [annotate] [blame] [check-ins using] [diff]
2012-12-20
16:42
[9a6f7b90a8] part of check-in [89177dcd09] Remove dummy implementations for formal protocols. (check-in: [89177dcd09] user: js, branch: trunk, size: 3834) [annotate] [blame] [check-ins using] [diff]
2012-12-15
17:52
[c07acfe92a] part of check-in [c85ff8d35a] OFDataArray: Improve API. (check-in: [c85ff8d35a] user: js, branch: trunk, size: 3577) [annotate] [blame] [check-ins using] [diff]
2012-10-09
22:02
[ca9d956364] part of check-in [a39a0d7bec] Silence warnings about implicit float to int casts (check-in: [a39a0d7bec] user: js, branch: trunk, size: 3675) [annotate] [blame] [check-ins using] [diff]
2012-09-16
15:27
[80446fffb3] part of check-in [c137da5e5b] Prefix all private methods with OF_. (check-in: [c137da5e5b] user: js, branch: trunk, size: 3670) [annotate] [blame] [check-ins using] [diff]
2012-09-12
06:00
[26ca60eaf1] part of check-in [3de549d6a5] OFStreamObserver: Cancel is no event anymore.

As cancel internally was an event, -[observeWithTimeout:] returned YES
before when an observe call was canceled. Now, the number of real events
is counted and NO returned if this is 0. (check-in: [3de549d6a5] user: js, branch: trunk, size: 3648) [annotate] [blame] [check-ins using] [diff]

06:00
[927bd4e34c] part of check-in [3c99aa51da] OFStreamObserver: Take a double as timeout. (check-in: [3c99aa51da] user: js, branch: trunk, size: 3545) [annotate] [blame] [check-ins using] [diff]
2012-08-10
20:08
[a6a3da0735] part of check-in [1255f3a11a] Directly use the runtime's autorelease pools.

This greatly improves performance, as it gets rid of the overhead of
OFAutoreleasePool. (check-in: [1255f3a11a] user: js, branch: trunk, size: 3507) [annotate] [blame] [check-ins using] [diff]

2012-07-16
23:49
[17f5ac1ccb] part of check-in [417b213d41] Add OF_ENSURE.

This is to be used when the condition includes a statement that needs to
be executed, as with assert, this would not be executed anymore when
NDEBUG is defined. (check-in: [417b213d41] user: js, branch: trunk, size: 3496) [annotate] [blame] [check-ins using] [diff]

2012-07-12
01:28
[106a17bb8d] part of check-in [8892ae9fcc] Don't access isa directly. (check-in: [8892ae9fcc] user: js, branch: trunk, size: 3493) [annotate] [blame] [check-ins using] [diff]
2012-02-17
16:25
[e0025aa14e] part of check-in [e9b0575094] Fix a very bad typo in OFStreamObserver_poll. (check-in: [e9b0575094] user: js, branch: trunk, size: 3484) [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
[54e5c68768] part of check-in [ce70e17b38] Update copyright. (check-in: [ce70e17b38] user: js, branch: trunk, size: 3484) [annotate] [blame] [check-ins using] [diff]
2011-10-25
00:02
[c610bddecc] part of check-in [95fdb174f6] Always release the pool in -[OFStreamObserver observe].

Per convention, this would not be necessasry. However, a common
use case is to call -[observe] in a loop that never ends, thus
no pool below the one created in -[observe] will ever be released. (check-in: [95fdb174f6] user: js, branch: trunk, size: 3478) [annotate] [blame] [check-ins using] [diff]

2011-09-22
23:25
[032c6d7a87] part of check-in [e1e7ffa903] Exceptions are now autoreleased.

This is safe as an "exception loop" can't happen, since if allocating
an exception fails, it throws an OFAllocFailedException which is
preallocated and can always be thrown.

So, the worst case would be that an autorelease of an exception fails,
triggering an OFOutOfMemoryException for which there is no memory,
resulting in an OFAllocFailedException to be thrown. (check-in: [e1e7ffa903] user: js, branch: trunk, size: 3432) [annotate] [blame] [check-ins using] [diff]

2011-09-20
19:06
[c77b1b02fd] part of check-in [1af1677350] Remove useless imports. (check-in: [1af1677350] user: js, branch: trunk, size: 3426) [annotate] [blame] [check-ins using] [diff]
18:40
[10244167cd] part of check-in [47caef4f8a] OFStreamObserver improvements.

* Make it possible to close a stream before the add/remove queue has
been processed.
* The actual implementations don't need to handle OFStreams now, but
get the file descriptor instead.
* Use an OFMutex instead of @synchronized. (check-in: [47caef4f8a] user: js, branch: trunk, size: 3513) [annotate] [blame] [check-ins using] [diff]

2011-09-19
12:44
[8b9acbd834] part of check-in [c279948fb8] Nicer OFStreamObserver API. (check-in: [c279948fb8] user: js, branch: trunk, size: 3597) [annotate] [blame] [check-ins using] [diff]
12:07
[103d3eeb79] part of check-in [d3f6cf9293] Improve OFStreamObserver. (check-in: [d3f6cf9293] user: js, branch: trunk, size: 3647) [annotate] [blame] [check-ins using] [diff]
2011-09-17
20:22
Added: [e529585f5e] part of check-in [4d2f08f6fe] Rename OFStream{Poll,Select}Observer to OFStreamObserver_{poll,select}. (check-in: [4d2f08f6fe] user: js, branch: trunk, size: 5018) [annotate] [blame] [check-ins using]