Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Tidy utf8.c a little: build table on first use, and make utf8_width take | 2015-11-12 | 1 | -2/+1 | ||
| | | | | a u_int rather than splitting and then combining again in utf8_split. | |||||
* | The output log is only useful once and it means creating a file, so open | 2015-10-31 | 1 | -1/+3 | ||
| | | | | it once at startup instead of in every call to tty_open. | |||||
* | Move struct options into options.c. | 2015-10-27 | 1 | -2/+2 | ||
| | ||||||
* | Break the common process set up, event loop and imsg dispatch code | 2015-10-27 | 1 | -54/+20 | ||
| | | | | | between server and client out into a separate internal API. This will make it easier to add another process. | |||||
* | tmux can call pledge() in main with large set and then reduce it | 2015-10-23 | 1 | -1/+5 | ||
| | | | | | slightly in the server to "stdio rpath wpath cpath fattr unix recvfd proc exec tty ps". | |||||
* | This should not be changed. | 2015-10-22 | 1 | -2/+2 | ||
| | ||||||
* | Rename shutdown to exit. | 2015-10-22 | 1 | -12/+12 | ||
| | ||||||
* | Userspace doesn't need to use SUN_LEN(): connect() and bind() must accept | 2015-10-11 | 1 | -2/+2 | ||
| | | | | | | sizeof(struct sockaddr_un), so do the simple, portable thing ok beck@ deraadt@ | |||||
* | Move initial conf load into cfg.c. | 2015-09-01 | 1 | -21/+4 | ||
| | ||||||
* | Event base does not need to be global. | 2015-08-30 | 1 | -3/+3 | ||
| | ||||||
* | We already loop over the windows in server_client_loop, so don't do it | 2015-08-29 | 1 | -5/+3 | ||
| | | | | again in server_loop just to check names. | |||||
* | Move alerts onto events rather than checking every loop. | 2015-08-29 | 1 | -2/+5 | ||
| | ||||||
* | Remove unused prototypes. | 2015-08-28 | 1 | -3/+1 | ||
| | ||||||
* | Per-session timers for locking, and remove the global one-second timer. | 2015-08-28 | 1 | -44/+3 | ||
| | ||||||
* | Remove the lock-server option which is a bit redundant, it isn't that | 2015-08-28 | 1 | -27/+2 | ||
| | | | | different without it. | |||||
* | Give clock mode its own timer. | 2015-08-28 | 1 | -10/+1 | ||
| | ||||||
* | Run status update on a per-client timer at status-interval. | 2015-08-28 | 1 | -3/+1 | ||
| | ||||||
* | Move format job cleanup onto its own timer. | 2015-08-28 | 1 | -3/+1 | ||
| | ||||||
* | Add an option (history-file) for a file to save/restore command prompt | 2015-07-20 | 1 | -1/+3 | ||
| | | | | history, from Olof-Joachim Frahm. | |||||
* | Similarly, for sessions use a callback to free rather than checking | 2015-06-05 | 1 | -20/+1 | ||
| | | | | every loop. | |||||
* | Instead of putting dead clients on a list and checking it every loop, | 2015-06-05 | 1 | -12/+1 | ||
| | | | | | | | use event_once to queue a callback to deal with them. Also dead clients with references would never actually be freed because the wrap-up functions (the callback for stdin, or status_prompt_clear) would never be called. So call them in server_client_lost. | |||||
* | Add support for a single "marked pane". There is one marked pane in the | 2015-06-04 | 1 | -14/+80 | ||
| | | | | | | | | | server at a time; it may be toggled or cleared with select-pane -m and -M (the border is highlighted). A new target '~' or '{marked}' specifies the marked pane to commands and it is the default target for the swap-pane and join-pane -s flag (this makes them much simpler to use - mark the source pane and then change to the target pane to run swapp or joinp). | |||||
* | Clear signal handlers before event_reinit as apparently it can otherwise | 2015-06-01 | 1 | -2/+2 | ||
| | | | | cause libevent to go strange. | |||||
* | does not need syslog.h | 2015-05-31 | 1 | -2/+1 | ||
| | ||||||
* | Move the jobs output cache into the formats code so that #() work more | 2015-05-27 | 1 | -1/+3 | ||
| | | | | generally (for example, again working in set-titles-string). | |||||
* | Convert clients list into a TAILQ. | 2015-04-24 | 1 | -46/+29 | ||
| | ||||||
* | Change the windows array into an RB tree and fix some places where we | 2015-04-22 | 1 | -17/+6 | ||
| | | | | were only looking at the first winlink for a window in a session. | |||||
* | window_index is only used in one place (window_destroy) so inline it there. | 2015-04-22 | 1 | -1/+2 | ||
| | ||||||
* | Do not die on USR1 if any of the socket parent directories are | 2015-04-21 | 1 | -9/+15 | ||
| | | | | missing. Reported by Robin Powell. | |||||
* | Add pane_dead_status for exit status of dead panes. | 2014-12-09 | 1 | -1/+2 | ||
| | ||||||
* | Move cfg_causes local into cfg.c and remove struct causelist. | 2014-10-27 | 1 | -14/+7 | ||
| | ||||||
* | Wake up any clients waiting with the wait-for command when the server | 2014-09-01 | 1 | -2/+18 | ||
| | | | | exits. | |||||
* | lockf is entirely useless and it was a mistake to change to it, go back | 2014-07-21 | 1 | -1/+2 | ||
| | | | | | to using flock which actually works sensibly. Also always retry the lock to fix a potential race, and add some extra logging. | |||||
* | Now that cmdlists are reference counted, there is no need for two-step | 2014-05-14 | 1 | -2/+1 | ||
| | | | | deletion via the dead_key_bindings tree. From Keith Amling. | |||||
* | There is no longer a need for a paste_stack struct or for global_buffers | 2014-04-24 | 1 | -4/+1 | ||
| | | | | to be global. Move to paste.c. | |||||
* | Some more long lines. | 2014-04-17 | 1 | -2/+2 | ||
| | ||||||
* | Do not run any command line command from the client which starts the | 2013-10-20 | 1 | -1/+4 | ||
| | | | | | | server until after the configuration file completes. This prevents it racing against run-shell or if-shell in .tmux.conf that run in the background. | |||||
* | Rename global configuration define. | 2013-04-24 | 1 | -5/+5 | ||
| | ||||||
* | Add a command queue to standardize and simplify commands that call other | 2013-03-24 | 1 | -19/+25 | ||
| | | | | | | | | | | | | | | | | | | | | | | commands and allow a command to block execution of subsequent commands. This allows run-shell and if-shell to be synchronous which has been much requested. Each client has a default command queue and commands are consumed one at a time from it. A command may suspend execution from the queue by returning CMD_RETURN_WAIT and then resume it by calling cmd_continue() - for example run-shell does this from the callback that is fired after the job is freed. When the command queue becomes empty, command clients are automatically exited (unless attaching). A callback is also fired - this is used for nested commands in, for example, if-shell which can block execution of the client's cmdq until a new cmdq becomes empty. Also merge all the old error/info/print functions together and lose the old curclient/cmdclient distinction - a cmdq is bound to one client (or none if in the configuration file), this is a command client if c->session is NULL otherwise an attached client. | |||||
* | No more lint means no more ARGSUSED. | 2013-03-22 | 1 | -4/+1 | ||
| | ||||||
* | Fix argument order in a log statement. | 2012-12-06 | 1 | -2/+2 | ||
| | ||||||
* | Use a utility function for common code to show errors in config file, | 2012-11-19 | 1 | -17/+6 | ||
| | | | | from Thomas Adam. | |||||
* | xfree is not particularly helpful, remove it. From Thomas Adam. | 2012-07-10 | 1 | -6/+6 | ||
| | ||||||
* | Stop accepting new clients for 1 second on EMFILE/ENFILE. Based on | 2012-04-11 | 1 | -7/+32 | ||
| | | | | ongoing fixes to other daemons by Theo. | |||||
* | Use a lock file and flock() to serialize server start, avoids problems | 2012-03-09 | 1 | -2/+6 | ||
| | | | | | when running a bunch of tmux from cron at the same time. Based on a diff from Tim Ruehsen. | |||||
* | Give each pane created in a tmux server a unique id (starting from 0), | 2011-03-27 | 1 | -1/+2 | ||
| | | | | | put it in the TMUX_PANE environment variable and accept it as a target. Suggested by and with testing and tweaks from Ben Boeckel. | |||||
* | Use LIST_* not SLIST_*. | 2011-01-26 | 1 | -2/+2 | ||
| | ||||||
* | Move all calls to fcntl(...O_NONBLOCK) into a function and clear the | 2011-01-08 | 1 | -7/+3 | ||
| | | | | | 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, | 2011-01-01 | 1 | -11/+3 | ||
| | | | | | | | 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@. | |||||
* | Change from a per-session stack of buffers to one global stack which is | 2010-12-30 | 1 | -1/+4 | ||
| | | | | | | | 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. |