nix-super/src/libutil
Eelco Dolstra 24b739817f
Fix double free in Store::queryPathInfo()
It was holding on to a Value* (i.e. a std::shared_ptr<ValidPathInfo>*)
outside of the pathInfoCache lock, so the std::shared_ptr could be
destroyed between the release of the lock and the decrement of the
std::shared_ptr refcount. This can happen if more than
'path-info-cache-size' paths are added in the meantime, *or* if
clearPathInfoCache() is called. The hydra-queue-runner queue monitor
thread periodically calls the later, so is likely to trigger a crash.

Fixes https://github.com/NixOS/hydra/issues/542.
2018-03-09 14:19:51 +01:00
..
affinity.cc printMsg(lvlError, ...) -> printError(...) etc. 2016-09-21 16:54:53 +02:00
affinity.hh Run the daemon worker on the same CPU as the client 2013-08-07 14:02:04 +02:00
archive.cc builtins.fetchgit: Support importing a working tree 2017-10-30 19:59:25 +01:00
archive.hh builtins.fetchgit: Support importing a working tree 2017-10-30 19:59:25 +01:00
args.cc nix: Respect -I, --arg, --argstr 2017-10-24 12:58:34 +02:00
args.hh nix: Respect -I, --arg, --argstr 2017-10-24 12:58:34 +02:00
compression.cc compression: make parallel sink separate class 2018-02-11 13:50:28 -06:00
compression.hh make multi threaded compression configurable and use single threaded 2018-02-07 17:54:08 +01:00
config.cc Config::handleUnknownSettings(): Remove unused 'fatal' argument 2018-02-19 14:00:34 +01:00
config.hh Config::handleUnknownSettings(): Remove unused 'fatal' argument 2018-02-19 14:00:34 +01:00
finally.hh Add missing #include 2016-11-07 14:35:47 +01:00
hash.cc libutil: Fix invalid assert on decoding base64 hashes 2018-02-19 23:20:26 +02:00
hash.hh builtins.fetchgit: Support importing a working tree 2017-10-30 19:59:25 +01:00
istringstream_nocopy.hh Move istringstream_nocopy to a separate file 2017-03-21 14:43:03 +01:00
json.cc nix search: Add a cache 2017-07-26 17:29:10 +02:00
json.hh nix search: Add a cache 2017-07-26 17:29:10 +02:00
lazy.hh Figure out the user's home directory if $HOME is not set 2017-05-05 17:08:23 +02:00
local.mk use libbrotli directly when available 2017-12-30 20:26:33 -06:00
logging.cc logging: Don't throw from Activity destructor 2018-03-06 10:42:58 -06:00
logging.hh logging: Don't throw from Activity destructor 2018-03-06 10:42:58 -06:00
lru-cache.hh Fix double free in Store::queryPathInfo() 2018-03-09 14:19:51 +01:00
monitor-fd.hh monitor-fds: Fix on macOS. 2018-02-14 18:26:37 -05:00
pool.hh RemoteStore: Add option to drop old connections from the pool 2017-09-14 18:10:38 +02:00
ref.hh Allow setting the state directory as a store parameter 2016-06-02 16:02:48 +02:00
serialise.cc Fix #1762 2018-02-13 14:26:19 +00:00
serialise.hh Pass all settings to build-remote 2017-10-23 20:50:28 +02:00
sync.hh Include missing <cstdlib> for abort() 2017-08-03 07:03:22 +10:00
thread-pool.cc Fix a hang in ThreadPool 2017-10-09 15:41:09 +02:00
thread-pool.hh Fix a hang in ThreadPool 2017-10-09 15:41:09 +02:00
types.hh Progress indicator: Show number of active items 2017-08-16 20:56:03 +02:00
util.cc nix run: Fix segfault on macOS 2018-02-26 18:29:40 +01:00
util.hh nix run: Fix segfault on macOS 2018-02-26 18:29:40 +01:00
xml-writer.cc OCD: foreach -> C++11 ranged for 2015-07-17 20:13:56 +02:00
xml-writer.hh And another one 2014-02-26 18:55:18 +01:00