Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Rework how screen size is tracked | Kevin Ballard | 2014-08-29 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | The screen size is fetched after a SIGWINCH is delivered. The current implementation has two issues: * It calls ioctl() from the SIGWINCH signal handler, despite ioctl() not being a function that is known to be safe to call. * It's not thread-safe. Signals can be delivered on arbitrary threads, so we don't know if it's actually safe to be modifying the cached winsize in response to a signal. It's also plausible that the winsize may be requested from a background thread. To solve the first issue, we twiddle a volatile boolean flag in the signal handler and defer the ioctl() call until we actually request the screen size. To solve the second issue, we introduce a pthread rwlock around the cached winsize. A rwlock is used because it can be expected that there are likely to be far more window size reads than window size writes. If we were using C++11 we could probably get away with atomics, but since we don't have that (or boost), a rwlock should suffice. Fixes #1613. | ||
* | Make escape_string transform wildcard characters | ridiculousfish | 2014-08-16 |
| | | | | | | The characters ANY_CHAR, ANY_STRING, and ANY_STRING_RECURSIVE are currently transformed by unescape, but not by escape. Let's try escaping them. Fixes #1614. | ||
* | Rename lock_t to mutex_lock_t to fix Solaris compilation | ridiculousfish | 2014-07-07 |
| | | | | Fixes #1510 | ||
* | Remove connection_t usage from write_to_fd | ridiculousfish | 2014-06-09 |
| | |||
* | Remove large parts of fishd interaction, including | ridiculousfish | 2014-06-06 |
| | | | | env_universal_server | ||
* | Merge branch 'master' into death_of_fishd | ridiculousfish | 2014-05-14 |
|\ | |||
| * | Hopefully better fix for prompt under Windows. Things that may store | ridiculousfish | 2014-05-14 |
| | | | | | | | | NOT_A_WCHAR must be wint_t, not wchar_t | ||
| * | Fix prompt under Windows. | Konrad Borowski | 2014-05-10 |
| | | | | | | | | | | The fix is obviously a hack caused by that NOT_A_WCHAR doesn't fit in wchar_t. Better fix would be nice. | ||
* | | Initial work on strategy_named_pipe universal notifier. | ridiculousfish | 2014-05-04 |
|/ | |||
* | Save a memory allocation in append_formatv | ridiculousfish | 2014-04-30 |
| | |||
* | Squelch some more warnings on Linux | ridiculousfish | 2014-04-27 |
| | |||
* | Remove useless return. | Konrad Borowski | 2014-04-22 |
| | |||
* | Fix line number reporting in new parser | ridiculousfish | 2014-03-20 |
| | |||
* | Make `contains` take the string by const reference again, for performance ↵ | ridiculousfish | 2014-03-11 |
| | | | | reasons | ||
* | Fixed various Undefined Behavior occurrences. | Daniel J. Hofmann | 2014-03-07 |
| | | | | | | | | | | | | | | | | | Conditionally uninitialized: - builtin_commandline.cpp:577 - expand.cpp:869 - parse_util.cpp:1036 Initialization of POD structs: - event.cpp:61 - autoload.cpp:22 References used with va_start: - common.cpp:608:18 Found with clang-3.4's awesome -Wconditional-uninitialized, -Wmissing-field-initializers and -Wvarargs. | ||
* | 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 |
| | |||
* | Dead stores | Geoff Nixon | 2014-02-27 |
| | |||
* | Optimize the tokenize_variable_array hot spot to do less string copying | ridiculousfish | 2014-02-24 |
| | |||
* | Partially rework profiling. Fix profiling crash with new parser. Fixes | ridiculousfish | 2014-02-09 |
| | | | | 1295 | ||
* | Update style and formatting to conform to fish style guide. | ridiculousfish | 2014-01-15 |
| | |||
* | Additional miscellaneous fixes based on cppcheck static analysis | ridiculousfish | 2014-01-12 |
| | |||
* | Miscellaneous minor fixes based on cppcheck static analyzer | ridiculousfish | 2014-01-12 |
| | |||
* | Merge branch 'master' into ast | ridiculousfish | 2014-01-08 |
|\ | |||
| * | Clean up and reduce memory allocations in string escaping | ridiculousfish | 2014-01-08 |
| | | |||
* | | Merge branch 'master' into ast | ridiculousfish | 2013-12-07 |
|\| | | | | | | | | | | | | | Conflicts: complete.cpp fish_tests.cpp highlight.cpp | ||
| * | Fix for compile error identified in | ridiculousfish | 2013-11-26 |
| | | | | | | | | https://github.com/fish-shell/fish-shell/issues/1142 | ||
| * | Fix for annoying error message when converting out of range escape | ridiculousfish | 2013-11-26 |
| | | | | | | | | https://github.com/fish-shell/fish-shell/issues/1107 | ||
| * | Fix support for backslash-newline in double quotes in unescape functions. ↵ | ridiculousfish | 2013-11-26 |
| | | | | | | | | | | | | Makes tests pass again. | ||
* | | Merge branch 'master' into ast | ridiculousfish | 2013-11-24 |
|\| | |||
| * | Remove old unescape() function | ridiculousfish | 2013-11-24 |
| | | |||
* | | Merge branch 'master' into ast | ridiculousfish | 2013-11-24 |
|\| | | | | | | | | | | | Conflicts: complete.cpp fish_tests.cpp | ||
| * | Large cleanup and refactoring of unescape() function. | ridiculousfish | 2013-11-24 |
| | | |||
* | | More work on new parser | ridiculousfish | 2013-08-08 |
|/ | |||
* | Fix for crash when setting tmux pane title | ridiculousfish | 2013-06-02 |
| | | | | https://github.com/fish-shell/fish-shell/issues/846 | ||
* | Formatting | ridiculousfish | 2013-06-02 |
| | |||
* | Support for fuzzy completions | ridiculousfish | 2013-05-25 |
| | | | | | https://github.com/fish-shell/fish-shell/issues/568 https://github.com/fish-shell/fish-shell/issues/528 | ||
* | Formatting and style updates | ridiculousfish | 2013-05-05 |
| | |||
* | Teach case-insensitive completions about tildes. Fixes ↵ | ridiculousfish | 2013-04-07 |
| | | | | https://github.com/fish-shell/fish-shell/issues/647 | ||
* | Implement actual error handling for builtin_printf. Fix the tests. | ridiculousfish | 2013-03-24 |
| | |||
* | 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. | ||
* | Fix compilation by using std::ptrdiff_t instead of ptrdiff_t | lledey | 2013-02-23 |
| | | | | Signed-off-by: lledey <lledey@gmail.com> | ||
* | Cleanup and simplify null_terminated_array_t and its clients | ridiculousfish | 2013-02-22 |
| | |||
* | First round of fixes based on cppcheck | ridiculousfish | 2013-02-16 |
| | | | | https://github.com/fish-shell/fish-shell/issues/575 | ||
* | Added a seq function that defers to the seq command if present | ridiculousfish | 2013-01-12 |
| | | | | https://github.com/fish-shell/fish-shell/issues/137 | ||
* | Formatting | ridiculousfish | 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 | ||
* | Make fishd base its variable files on the MAC address instead of hostname | ridiculousfish | 2013-01-08 |
| | | | | Fixes https://github.com/fish-shell/fish-shell/issues/183 | ||
* | Reset the color before we clear to eol | ridiculousfish | 2013-01-04 |
| | | | | Fixes https://github.com/fish-shell/fish-shell/issues/493 | ||
* | parsing numbers imho better uses + rather than | | Jan Kanis | 2012-12-30 |
| |