aboutsummaryrefslogtreecommitdiff
path: root/src/os
Commit message (Collapse)AuthorAge
...
* Remove unused return values.Thomas Wienecke2014-03-07
|
* Move definition of helper function below their usage.Thomas Wienecke2014-03-07
|
* Simplify mch_can_exe extracting is_executable_in_path.Thomas Wienecke2014-03-07
|
* Declare is_executable as static and remove its unit tests.Thomas Wienecke2014-03-07
| | | | | | Testing the public interface mch_can_exe should suffice. Every former test of is_executable has a counterpart in the tests of mch_can_exe. Thus we can keep private things private.
* Move mch_can_exe, executable_file to os/fs.c.Thomas Wienecke2014-03-07
| | | | * Rename executable_file to is_executable.
* Fix memory leak and enable valgrind on travisThiago de Arruda2014-03-07
|
* cleanup environment variable handling + unit testsStefan Hoffmann2014-03-06
| | | | | | | | * removed a putenv() implementation which isn't needed anymore * mch_getenv() and mch_setenv() are now functions in src/os/env.c * removes direct calls to getenv() and setenv() outside of src/os/env.c * refactored the logic of get_env_name into mch_getenvname_at_index * added unittests for the functions in os/env.c
* Fix style issues.Thomas Wienecke2014-03-06
| | | | | | | | * Rename mch_full_name to mch_get_absolute_path. * Rename mch_is_full_name to mch_is_absolute_path. * Add a lot of missing parentheses. * Remove yoda-conditions for consistency. * Remove spaces in function declaration.
* Port mch_isdir to libuv.Thomas Wienecke2014-03-05
|
* Rename and refactor mch_FullName.Thomas Wienecke2014-03-04
| | | | | | | | | * Rename mch_FullName to mch_full_name to match the style guide. * Add mch_full_dir_name, which saves the absolute path of a given directory relative to cwd into a given buffer. * Add function append_path, which glues together two given paths with a slash. * Adapt moonscript coding style to the tests.
* Remove implicit declaration of vim_strrchr and vim_strncpyScott Nielsen2014-02-26
|
* Removes 'proto' dirscott-linder2014-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See #137 for the issue. Every header in the proto directory was: * Given include guards in the form #ifndef NEOVIM_FILENAME_H #define NEOVIM_FILENAME_H ... #endif /* NEOVIM_FILENAM_H */ * Renamed from *.pro -> *.h * Moved from src/proto/ to src/ This would have caused conficts with some existing headers in src/; rather than merge these conflicts now (which is a whole other can of worms involving multiple and conditional inclusion), any header in src/ with a conflicting name was renamed from *.h -> *_defs.h (which may or may not actually describe its purpose, the change is purely a namespacing issue). Once all of these changes were made a script was developed to determine what #includes needed to be added to each source file to describe its dependencies and allow it to compile; because the script is so short and I'll just list it here: #! /bin/bash cd $(dirname $0) # Scrapes `make` output for provided error messages and outputs #includes # needed to resolve them. # $1 : part of the clang error message between filename and identifier list_missing_includes() { for file_missing_pair in $(CC=clang make 2>&1 >/dev/null | sed -n "s/\/\(.*\.[hc]\).*$1.*'\(.*\)'.*/\1:\2/p"); do fields=(${file_missing_pair//:/ }) source_file=${fields[0]} missing_func=${fields[1]} # Try to find the declaration of the missing function. echo $(basename $source_file) \ \#include \"$(grep -r "\b$missing_func __ARGS" | sed -n "s/.*\/\(.*\)\:.*/\1/p")\" # Remove duplicates done | sort | uniq } echo "Finding missing function prototypes..." list_missing_includes "implicit declaration of function" echo "Finding missing identifier declarations..." list_missing_includes "use of undeclared identifier" Each list of required headers was added by hand in the following format: #include "vim.h" #include "*_defs.h" #include "filename.h" /* All other includes in same module here, in alphabetical order. */ /* All includes from other modules (e.g. "os/*.h") here in alphabetical * order. */
* os_unix: Port mch_FullName and mch_isFullName to libuv.Thomas Wienecke2014-02-25
| | | | | Basically just delete conditional use of fchdir, since the other called mch_* functions are already ported to libuv.
* os_unix: Use libuv uv_cwd instead of getcwd/getwd.Thomas Wienecke2014-02-25
|
* Add missing include guard to os moduleThiago de Arruda2014-02-24
|
* Create new OS moduleThiago de Arruda2014-02-24
This module will contain all functions that perform OS calls such as IO, filesystem access, etc.