Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Minor cleanup of redirection functions | ridiculousfish | 2014-04-11 |
| | |||
* | 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. | ||
* | Reenable free_redirected_fds_from_pipes. | ridiculousfish | 2013-08-19 |
| | |||
* | Initial work towards various IO cleanups with an eye to fixing ↵ | ridiculousfish | 2013-08-19 |
| | | | | https://github.com/fish-shell/fish-shell/issues/110 | ||
* | Cleanup and simplify null_terminated_array_t and its clients | ridiculousfish | 2013-02-22 |
| | |||
* | Make subcommands modify $status, and make builtin_set not modify status ↵ | ridiculousfish | 2013-01-31 |
| | | | | | | | unless it fails https://github.com/fish-shell/fish-shell/issues/547 https://github.com/fish-shell/fish-shell/issues/214 | ||
* | Merge branch 'split-io' of git://github.com/xiaq/fish-shell into xiaq-split-io | ridiculousfish | 2013-01-18 |
|\ | |||
* | | add a JOIN_THREADS_BEFORE_FORK preprocessor flag to help debug locking problems | Jan Kanis | 2013-01-17 |
| | | |||
| * | Make is_input a member of io_pipe_t | Cheer Xiao | 2013-01-17 |
| | | |||
| * | Split out io_pipe_t, let io_buffer_t inherit it | 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 |
|/ | |||
* | use debug_safe in postfork do_builtin_io. Closes #495 | Jan Kanis | 2013-01-12 |
| | |||
* | Make do_builtin_io multi-fork safe, moved it to postfork.cpp | ridiculousfish | 2013-01-11 |
| | | | | Addresses https://github.com/fish-shell/fish-shell/issues/495 | ||
* | Revert "Revert shared_ptr<io_data_t> changes until kinks are ironed out" | Cheer Xiao | 2013-01-11 |
| | | | | This reverts commit 77f1b1f0fe27778750bb9b9aa53f6bc42d5e5843. | ||
* | Don't call strerror or perror after fork, it's unsafe. Added safe_strerror ↵ | ridiculousfish | 2013-01-09 |
| | | | | | | and safe_perror replacements. Fixes https://github.com/fish-shell/fish-shell/issues/495 | ||
* | 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 | ||
* | 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> | ||
* | 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 |
| | |||
* | Removed unused commented out code and fixed some indentation | ridiculousfish | 2012-11-04 |
| | |||
* | Don't use posix_spawn for commands that need to be put into foreground to ↵ | ridiculousfish | 2012-11-04 |
| | | | | | | avoid a race Fix for race where a command's output may not be fully drained | ||
* | Don't use posix_spawn when file redirections are involved (except /dev/null) ↵ | ridiculousfish | 2012-10-29 |
| | | | | | | | because the error handling is too difficult Fix exec to correctly handle the case where a pid could not be created due to posix_spawn failing Should fix https://github.com/fish-shell/fish-shell/issues/364 | ||
* | Reintroduce IO transmorgrification (yuck) to fix problems with fish_config ↵ | ridiculousfish | 2012-08-22 |
| | | | | and complicated IO redirections | ||
* | Real fix for https://github.com/fish-shell/fish-shell/issues/278 | ridiculousfish | 2012-08-15 |
| | | | | We forget to set the parent group ID in posix_spawn (!) | ||
* | Adopt posix_spawn (!) | ridiculousfish | 2012-08-15 |
| | | | | | Rewrite IO chains to be a vector of pointers, instead of a linked list Removed io_transmogrify | ||
* | Fix compile error (oops) | ridiculousfish | 2012-03-27 |
| | |||
* | Make the color picker cell borders appear correctly in Firefox | ridiculousfish | 2012-03-27 |
| | |||
* | Flip the switch to stop draining threads before exec (!) | ridiculousfish | 2012-03-09 |
| | |||
* | A bunch of changes working towards eliminating all memory allocation after ↵ | ridiculousfish | 2012-03-08 |
| | | | | fork() | ||
* | Some initial work towards cutting down the number of fork calls we do | ridiculousfish | 2012-03-06 |
| | |||
* | 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 changes to use CLO_EXEC, with an eye towards some day using it ↵ | Peter Ammon | 2012-03-02 |
| | | | | correctly. | ||
* | More work towards improving relationship between multithreading and fork | ridiculousfish | 2012-02-29 |
| | |||
* | More work on improving interaction between fork and pthreads. Added ↵ | ridiculousfish | 2012-02-29 |
| | | | | null_terminated_array_t class. | ||
* | Added postfork | ridiculousfish | 2012-02-29 |