[1243] in BarnOwl Developers

home help back first fref pref prev next nref lref last post

[nelhage/barnowl] f36cd9: Add a void* data to owl_dispatch and pass it aroun...

daemon@ATHENA.MIT.EDU (noreply@github.com)
Thu Oct 29 18:14:31 2009

Resent-From: nelhage@mit.edu
Resent-To: barnowl-dev-mtg@charon.mit.edu
X-Original-To: nelhage@lunatique.mit.edu
Date: Wed, 17 Dec 2008 14:17:15 -0800
From: noreply@github.com
Apparently-To: <dirty-owl-hackers@mit.edu>
To: undisclosed-recipients:;

Branch: refs/heads/master
Home:   http://github.com/nelhage/barnowl

Commit: f36cd979e607d7a68570b5a8af527190a28aa62a
    http://github.com/nelhage/barnowl/commit/f36cd979e607d7a68570b5a8af527190a28aa62a
Author: Nelson Elhage <nelhage@mit.edu>
Date:   2008-12-17 (Wed, 17 Dec 2008)

Changed paths:
  M owl.c
  M owl.h
  M perlconfig.c
  M select.c
  M zephyr.c

Log Message:
-----------
Add a void* data to owl_dispatch and pass it around.

Add a void* data field for the use of dispatches, and pass around the
owl_dispatch. This allows one dispatch function to be used for
multiple fd's, and lets us eliminate perl-specific code from the
dispatch loop. In addition, we need to add a destructor to
owl_dispatch so that perl dispatches can have their SV* decref'd on
destroy.


Commit: 1895c292a4af5f8fb2b9305e3ea30bebe2ec9b4e
    http://github.com/nelhage/barnowl/commit/1895c292a4af5f8fb2b9305e3ea30bebe2ec9b4e
Author: Nelson Elhage <nelhage@mit.edu>
Date:   2008-12-17 (Wed, 17 Dec 2008)

Changed paths:
  M owl.h
  M perlconfig.c
  M select.c

Log Message:
-----------
Fix owl_select_remove_dispatch bugs.

Fix two bugs in owl_select_remove_dispatch:

(1) Removing a dispatch from that dispatch's callback was bad, because
    it mutated the dispatch list while it was being traversed. Fix
    that by noting if we're in the middle of a dispatch, and deferring
    cleanup until later.
(2) Calling owl_free on dispatches in select.c is a strange API, since
    it doesn't allocate them in the first place. Since we now have
    destructors, make freeing the dispatch their job.


Commit: cf0cc645dad3534085ab0e8bef4281f9a742c32d
    http://github.com/nelhage/barnowl/commit/cf0cc645dad3534085ab0e8bef4281f9a742c32d
Author: Nelson Elhage <nelhage@mit.edu>
Date:   2008-12-17 (Wed, 17 Dec 2008)

Changed paths:
  M owl.c

Log Message:
-----------
Use owl_select instead of owl_muxevents for stderr redirection.

owl_muxevents appears to be a partial select() event loop that we
didn't know about it. Since we have a full event loop now, this commit
and the next few will remove muxevents and move their users over to
owl_select.


Commit: 40c665796431e6bd112feb7e36e6520b696396c4
    http://github.com/nelhage/barnowl/commit/40c665796431e6bd112feb7e36e6520b696396c4
Author: Nelson Elhage <nelhage@mit.edu>
Date:   2008-12-17 (Wed, 17 Dec 2008)

Changed paths:
  M owl.h
  M popexec.c

Log Message:
-----------
Use owl_select instead of owl_muxevents for owl_popexec.


Commit: df7f3647dd2b00527dde45b84c564c64525f695c
    http://github.com/nelhage/barnowl/commit/df7f3647dd2b00527dde45b84c564c64525f695c
Author: Nelson Elhage <nelhage@mit.edu>
Date:   2008-12-17 (Wed, 17 Dec 2008)

Changed paths:
  M Makefile.in
  M muxevents.c

Log Message:
-----------
Remove muxevents

owl_muxevents has now been entirely replaced by owl_select.



home help back first fref pref prev next nref lref last post