Commit Graph

8 Commits

Author SHA1 Message Date
Thiago de Arruda
1ec7db70ec job: Refactor process spawning and startup arguments
- process spawning was decoupled from the rest of the job control logic.  The
  goal is reusing it for spawning processes connected to pseudo terminal file
  descriptors.
- job_start now receives a JobOptions structure containing all the startup
  options.
2015-02-23 21:43:33 -03:00
Thiago de Arruda
88a49148b3 test: Pass --show-possibly-lost=no to valgrind in helpers.lua
This command-line flag will suppress all warnings about interior pointers,
which are used in hashtab.c.
2014-11-07 01:40:18 -03:00
Thiago de Arruda
8979ede45d test: Add more valgrind "possibly lost" suppressions
These valgrind entries are false positives because vim uses interior pointers.
2014-11-06 04:22:06 -03:00
Thiago de Arruda
7cff10a6c5 test: Add valgrind suppression for libuv memory leak
A memory leak happens in uv_spawn when stdio is set to UV_IGNORE and the child
process fails to start. This only happens when libuv is compiled with gcc and
optimizations enabled(the default).

Compiling with '-O0' removes the leak, but all that can be done right now is
ignore the leak by adding a valgrind suppression.
2014-11-03 21:51:51 -03:00
Thiago de Arruda
a80a68c927 Build: Enable valgrind's --leak-check when testing the API 2014-05-26 14:02:12 -03:00
Thiago de Arruda
cb9afe0dc0 Add helpers for debugging with valgrind
The environment variable USE_VALGRIND can be set to run tests with valgrind. If
VALGRIND_GDB is set, valgrind will start it's own gdbserver for remote
debugging with `target remote | vgdb`. USE_GDB can still be used, but it will
be ignored if USE_VALGRIND is set.
2014-04-05 11:05:31 -03:00
Thiago de Arruda
f6ace9962d Refactor travis build to use clang's sanitizers
- Valgrind configuration removed
- Fix errors reported by the undefined behavior sanitizer
- Travis will now run two build steps:
  - A normal build of a shared library for unit testing(in parallel with gcc)
  - A clang build with some sanitizers enabled for integration testing.

After these changes travis will run much faster, while providing valgrind-like
error detection.
2014-03-13 15:26:28 -03:00
Thiago de Arruda
baaf24acea Add valgrind suppression file 2014-02-26 16:21:20 -03:00