--- rxvt-unicode/src/iom.h 2004/09/02 07:44:40 1.15 +++ rxvt-unicode/src/iom.h 2005/04/26 00:35:00 1.22 @@ -1,5 +1,5 @@ /* - iom.h -- generic I/O multiplexor + iom.h -- generic I/O multiplexer Copyright (C) 2003, 2004 Marc Lehmann This program is free software; you can redistribute it and/or modify @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef IOM_H__ @@ -66,17 +66,13 @@ template struct io_manager_vec : vector { -#if IOM_CHECK - bool activity; -#endif - void erase_unordered (unsigned int pos) { watcher *w = (*this)[this->size () - 1]; this->pop_back (); - if (this->size ()) - if ((*this)[pos] = w) + if (!this->empty ()) + if (((*this)[pos] = w)) // '=' is correct! w->active = pos + 1; } }; @@ -90,6 +86,14 @@ static void unreg (watcher &w, io_manager_vec &queue); public: +#if IOM_TIME + // fetch time only + static tstamp now (); + + // set NOW + static void set_now (); +#endif + // register a watcher #if IOM_IO static void reg (io_watcher &w); static void unreg (io_watcher &w);