diff options
author | Ludovic Courtès <ludo@gnu.org> | 2021-11-25 00:01:12 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2021-11-25 00:17:21 +0100 |
commit | f9b1bb916c284bea00dd5549a43e0894b219d650 (patch) | |
tree | fc509c1f54fcd29cf63353a2d7fd38f502b7305b /nix/libutil | |
parent | 1eb40a6dc4917f5a2e915f8b31b750dba3d378c6 (diff) |
daemon: Read substitute nar size as 'unsigned long long'.
Fixes <https://issues.guix.gnu.org/46212>.
Reported by Christopher Baines <mail@cbaines.net>.
Previously, the nar size returned by 'guix substitute' would be read as
an 'int'; thus, values above 2^31 - 1 would be read and then stored as
negative integers in the database.
Regression introduced in 9dfa20a22ae0be3d3b01a7b3d422af97428c627e.
* nix/libstore/build.cc (SubstitutionGoal::finished): Use templatized
'string2Int' instead of 'std::atoi' to get an 'unsigned long long',
which is the type of 'hash.second'.
* tests/store.scm ("substitute and large size"): New test.
Diffstat (limited to 'nix/libutil')
0 files changed, 0 insertions, 0 deletions