Age | Commit message (Collapse) | Author |
|
Move all calls to fcntl(...O_NONBLOCK) into a function and clear the
flag on the stdio file descriptors before closing them (fixes things
like "tmux ls && cat").
|
|
flag on the stdio file descriptors before closing them (fixes things
like "tmux ls && cat").
|
|
Don't reset the activity timer for unattached sessions every second,
this screws up the choice of most-recently-used. Instead, break the time
update into a little function and do it when the session is attached.
Pointed out by joshe@.
|
|
this screws up the choice of most-recently-used. Instead, break the time
update into a little function and do it when the session is attached.
Pointed out by joshe@.
|
|
much more convenient and also simplifies lot of code. This renders
copy-buffer useless and makes buffer-limit now a server option.
By Tiago Cunha.
|
|
As a consequence buffer-limit is now a server option.
|
|
Store sessions in an RB tree by name rather than a list, this is tidier
and allows them to easily be shown sorted in various lists
(list-sessions/choose-sessions).
Keep a session index which is used in a couple of places internally but
make it an ever-increasing number rather than filling in gaps with new
sessions.
|
|
and allows them to easily be shown sorted in various lists
(list-sessions/choose-sessions).
Keep a session index which is used in a couple of places internally but
make it an ever-increasing number rather than filling in gaps with new
sessions.
|
|
|
|
Merge the before and after attach client code into one in client.c
(instead of two in tmux.c and client.c).
|
|
Trying to set FD_CLOEXEC on every fd is a lost cause, just use
closefrom() before exec.
|
|
(instead of two in tmux.c and client.c).
|
|
closefrom() before exec.
|
|
Two new options:
- server option "exit-unattached" makes the server exit when no clients
are attached, even if sessions are present;
- session option "destroy-unattached" destroys a session once no clients
are attached to it.
These are useful for preventing tmux remaining in the background where
it is undesirable and when using tmux as a login shell to keep a limit
on new sessions.
|
|
Modify the permissions on the socket when adding or removing +x to show
attached sessions, rather than replacing them.
|
|
- server option "exit-unattached" makes the server exit when no clients
are attached, even if sessions are present;
- session option "destroy-unattached" destroys a session once no clients
are attached to it.
These are useful for preventing tmux remaining in the background where
it is undesirable and when using tmux as a login shell to keep a limit
on new sessions.
|
|
attached sessions, rather than replacing them.
|
|
Do not call event_del() for signals after fork(), just use sigaction()
directly instead - calling libevent functions after fork() w/o
event_reinit() is a bad idea, even if in this case it was harmless.
|
|
directly instead - calling libevent functions after fork() w/o
event_reinit() is a bad idea, even if in this case it was harmless.
|
|
with strange devices and (b) since there appears to be a bull in the
poll code in libevent as well...
requested by nicm who is away
|
|
devices.
An upcoming fix for some problems with the client stdout/stderr handling
relies on it working, so make tmux force libevent to use poll(2) via
EVENT_NOKQUEUE, until we have fixed kqueue.
|
|
Give tmux sockets (but not the containing folder) group
permissions. This allows hardlinks to the sockets to be used more
easily.
|
|
permissions. This allows hardlinks to the sockets to be used more
easily.
|
|
|
|
Make signal handler setup/teardown two common functions instead of six,
and reset SIGCHLD after fork to fix problems with some shells. From
Romain Francoise.
|
|
|
|
|
|
and reset SIGCHLD after fork to fix problems with some shells. From
Romain Francois.
|
|
|
|
|
|
Micah Cowan.
|
|
|
|
|
|
|
|
Use the array.h code for the causes list.
|
|
Instead of bailing out on the first configuration file error, carry on,
collecting all the errors, then start with the active window in more mode
displaying them.
|
|
|
|
collecting all the errors, then start with the active window in more mode
displaying them.
|
|
Ignore SIGHUP as well.
|
|
|
|
Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last
time now I've configured emacs to make them displayed in really annoying
colours...
|
|
Close the pane if the process died due to a signal, not just if it exited
normally.
|
|
time now I've configured emacs to make them displayed in really annoying
colours...
|
|
normally.
|
|
Remove a couple of unused arguments where possible, and add /* ARGSUSED */ to
the rest to reduce lint output.
|
|
the rest to reduce lint output.
|
|
Destroy panes immediately rather than checking them all every loop.
|
|
|
|
Free the pane bufferevent when the fd is closed (the signal could come before
the error callback).
|
|
Only need to chmod +x or -x the socket when a client is created, lost or
attached, rather than every event loop.
|