Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Solaris build fixes: pick the right curses more of the time | David Adam | 2014-12-21 |
| | |||
* | Minor cleanup of redirection functions | ridiculousfish | 2014-04-11 |
| | |||
* | Remove support for input IO_BUFFERs, which were only used by fish_pager | ridiculousfish | 2014-03-15 |
| | |||
* | Revert "Merge pull request #1317 from pullreq/cpp" | ridiculousfish | 2014-02-28 |
| | | | | | | | This reverts commit 74135c0600d5dcc40d396d0e7293c17b8d4bdaa7, reversing changes made to 6d749789ce240a3e6f1447777db63fd8e7525560. See discussion in #1317 | ||
* | Fixes .c -> .cpp in comments. For doxygen. | Geoff Nixon | 2014-02-27 |
| | |||
* | Fix io_buffer_t::print to take unsigned long argument. | Konrad Borowski | 2013-11-25 |
| | |||
* | Big fat refactoring of how redirections work. In fish 1.x and 2.0.0, the ↵ | ridiculousfish | 2013-08-19 |
| | | | | | | | | | | redirections for a process were flattened into a big list associated with the job, so there was no way to tell which redirections applied to each process. Each process therefore got all the redirections associated with the job. See https://github.com/fish-shell/fish-shell/issues/877 for how this could manifest. With this change, jobs only track their block-level redirections. Process level redirections are correctly associated with the process, and at exec time we stitch them together (block, pipe, and process redirects). This fixes the weird issues where redirects bleed across pipelines (like #877), and also allows us to play with the order in which redirections are applied, since the final list is constructed right before it's needed. This lets us put pipes after block level redirections but before process level redirections, so that a 2>&1-type redirection gets picked up after the pipe, i.e. it should fix https://github.com/fish-shell/fish-shell/issues/110 This is a significant change. The tests all pass. Cross your fingers. | ||
* | Initial work towards various IO cleanups with an eye to fixing ↵ | ridiculousfish | 2013-08-19 |
| | | | | https://github.com/fish-shell/fish-shell/issues/110 | ||
* | Mark stdin as nonblocking if we get EWOULDBLOCK, and before handing it off ↵ | ridiculousfish | 2013-04-07 |
| | | | | | | to child processes when either starting them or moving them to the foreground. https://github.com/fish-shell/fish-shell/issues/176 | ||
* | Kill termio.h and sys/termios.h | David Adam (zanchey) | 2013-03-05 |
| | | | | | | | | | | | On FreeBSD, compilation complains that "this file includes <sys/termios.h> which is deprecated, use <termios.h> instead". On Linux and FreeBSD, <sys/termios.h> literally just pulls in <termios.h>. On OS X and Solaris, <termios.h> pulls in <sys/termios.h>. <termio.h> doesn't exist on FreeBSD or Mac OS X, and on Linux is marked as deprecated and just includes <termios.h>. It does exist on Solaris, but no `struct termio` is ever actually used in the codebase. | ||
* | Hopeful fix to avoid forking for certain builtins like echo when they have ↵ | ridiculousfish | 2013-02-22 |
| | | | | an input redirection only | ||
* | Make io_data_t::fd const | Cheer Xiao | 2013-02-11 |
| | | | | In exec(), pipe_{write,read} no longer get reused. | ||
* | Initial set of changes working to make fish robust against running out of ↵ | ridiculousfish | 2013-01-30 |
| | | | | file descriptors | ||
* | Remove some functions which were rendered trivial by xiaq's changes. Make ↵ | ridiculousfish | 2013-01-19 |
| | | | | io_file_t take its path directly. Make io_buffer_t no longer use a shared_ptr for its data. | ||
* | Revert "Make io_buffer_t::out_buffer a raw pointer, initialize in ↵ | Cheer Xiao | 2013-01-17 |
| | | | | | | | | | | io_buffer_t's constructor" This reverts commit d48ffab9d67da48cf45c2f5560c21a767144545f. Conflicts: io.cpp io.h | ||
* | Make is_input a member of io_pipe_t | Cheer Xiao | 2013-01-17 |
| | |||
* | Make io_buffer_t::out_buffer a raw pointer, initialize in io_buffer_t's ↵ | Cheer Xiao | 2013-01-17 |
| | | | | constructor | ||
* | Make io_data_t pure virtual, its constructor protected | Cheer Xiao | 2013-01-17 |
| | |||
* | Split out io_pipe_t, let io_buffer_t inherit it | Cheer Xiao | 2013-01-17 |
| | |||
* | Convert io_buffer_read to io_buffer_t::read | Cheer Xiao | 2013-01-17 |
| | |||
* | Convert io_buffer_create to static io_buffer_t::create, make io_buffer_t ↵ | Cheer Xiao | 2013-01-17 |
| | | | | constructor private | ||
* | Convert io_buffer_destroy to ~io_buffer_t | Cheer Xiao | 2013-01-17 |
| | |||
* | Split out io_buffer_t, make input_redirect in exec() a raw pointer | Cheer Xiao | 2013-01-17 |
| | |||
* | Split out io_file_t | Cheer Xiao | 2013-01-17 |
| | |||
* | Split out io_fd_t | Cheer Xiao | 2013-01-17 |
| | |||
* | Split out io_close_t | Cheer Xiao | 2013-01-17 |
| | |||
* | Put io_data_t detail printing in virtual io_data_t::print | Cheer Xiao | 2013-01-17 |
| | |||
* | Revert "Revert shared_ptr<io_data_t> changes until kinks are ironed out" | Cheer Xiao | 2013-01-11 |
| | | | | This reverts commit 77f1b1f0fe27778750bb9b9aa53f6bc42d5e5843. | ||
* | Revert shared_ptr<io_data_t> changes until kinks are ironed out | ridiculousfish | 2013-01-04 |
| | | | | | | | | | | | https://github.com/fish-shell/fish-shell/pull/487 Revert "Merge branch 'oo-io' of git://github.com/xiaq/fish-shell into xiaq-oo-io" This reverts commit f3c8f535a48d5fdd518bd60879ade948bc8be7e6, reversing changes made to b02f6cf3bc4343cf3e068dee3cb46de7139a5a27. Also reverts ac023f7588e562a03fdea7fd2feda487f18827c7 and a79d3c680c9548566309121630dadc94e48934c4 | ||
* | Remove io_duplicate, which is no longer used | ridiculousfish | 2013-01-04 |
| | |||
* | Replace some shared_ptrs with const shared_ptr &. Don't use shared_ptr in ↵ | ridiculousfish | 2013-01-04 |
| | | | | postfork.cpp. Eliminate copy constructor in io_data_t. Simplify some other uses of shared_ptr<io_data_t> | ||
* | Convert all io_data_t copying to shared_ptr copying. | Cheer Xiao | 2013-01-01 |
| | | | | Copy constructor of io_data_t is removed. | ||
* | Use shared_ptr to manage io_data_t*. | Cheer Xiao | 2012-12-31 |
| | |||
* | Fix indentation of switch statements | ridiculousfish | 2012-11-19 |
| | |||
* | Apply new indentation, brace, and whitespace style | ridiculousfish | 2012-11-18 |
| | |||
* | Remove trailing whitespaces and change tabs to spaces | Łukasz Niemier | 2012-11-18 |
| | |||
* | Restore correct order of IO redirections | ridiculousfish | 2012-08-19 |
| | | | | Fixes https://github.com/fish-shell/fish-shell/issues/281 | ||
* | Adopt posix_spawn (!) | ridiculousfish | 2012-08-15 |
| | | | | | Rewrite IO chains to be a vector of pointers, instead of a linked list Removed io_transmogrify | ||
* | Cleaned up lots of typecasts, simplified some string handling | ridiculousfish | 2012-08-04 |
| | |||
* | A bunch of changes working towards eliminating all memory allocation after ↵ | ridiculousfish | 2012-03-08 |
| | | | | fork() | ||
* | Final cleanup of io_data_t now that I recognize the bizarre way in which it ↵ | ridiculousfish | 2012-03-04 |
| | | | | shares output buffers (not sure how this ever worked before) | ||
* | Some initial work on removing buffer_t from io_data_t | ridiculousfish | 2012-03-03 |
| | |||
* | Fixed initialization of va_list variable in debug() in common.cpp, and ↵ | Siteshwar Vashisht | 2012-02-23 |
| | | | | mismatched new/free() in io.cpp | ||
* | Squash a bunch of leaks | ridiculousfish | 2012-02-21 |
| | |||
* | Some hopefully good changes to get IOs off of halloc | ridiculousfish | 2012-02-09 |
| | |||
* | Some changes to migrate towards C++ and a multithreaded model | ridiculousfish | 2011-12-26 |
| | |||
* | Initial C++ conversion | ridiculousfish | 2011-12-26 |