--- rxvt-unicode/src/rxvtd.C 2007/12/04 14:50:43 1.40 +++ rxvt-unicode/src/rxvtd.C 2007/12/14 02:22:24 1.43 @@ -3,7 +3,7 @@ *----------------------------------------------------------------------* * * All portions of code are copyright by their respective author/s. - * Copyright (c) 2003-2006 Marc Lehmann + * Copyright (c) 2003-2007 Marc Lehmann * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -48,10 +48,11 @@ int getfd (int remote_fd); server (int fd) - : read_ev (this, &server::read_cb) { - callback_set (log_cb , this, server, log_msg); - callback_set (getfd_cb, this, server, getfd); + read_ev.set (this); + log_cb.set (this); + getfd_cb.set (this); + this->fd = fd; fcntl (fd, F_SETFD, FD_CLOEXEC); fcntl (fd, F_SETFL, 0); @@ -70,8 +71,9 @@ }; unix_listener::unix_listener (const char *sockname) -: accept_ev (this, &unix_listener::accept_cb) { + accept_ev.set (this); + sockaddr_un sa; if (strlen (sockname) >= sizeof(sa.sun_path)) @@ -196,11 +198,11 @@ term->log_hook = &log_cb; term->getfd_hook = &getfd_cb; - bool success; + bool success = true; try { - success = term->init (argv, envv); + term->init (argv, envv); } catch (const class rxvt_failure_exception &e) {