From 137e8ad4b6ce28b1a1355d5a125d09670388c2b7 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Mon, 14 Dec 2015 13:58:46 +0100 Subject: tagfile: Hardcode error message for out of range integer values This makes the test suite work on 32 bit-long platforms. Gbp-Dch: ignore --- apt-pkg/tagfile.cc | 7 +++---- test/integration/test-policy-pinning | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/apt-pkg/tagfile.cc b/apt-pkg/tagfile.cc index 8acecd735..2bef9b48b 100644 --- a/apt-pkg/tagfile.cc +++ b/apt-pkg/tagfile.cc @@ -537,11 +537,10 @@ signed int pkgTagSection::FindI(const char *Tag,signed long Default) const errno = 0; char *End; signed long Result = strtol(S,&End,10); - if (errno == ERANGE) - _error->Errno("strtol", _("Cannot convert %s to integer"), S); - if (Result < std::numeric_limits::min() || Result > std::numeric_limits::max()) { + if (errno == ERANGE || + Result < std::numeric_limits::min() || Result > std::numeric_limits::max()) { errno = ERANGE; - _error->Errno("", _("Cannot convert %s to integer"), S); + _error->Error(_("Cannot convert %s to integer: out of range"), S); } if (S == End) return Default; diff --git a/test/integration/test-policy-pinning b/test/integration/test-policy-pinning index 062c8058f..3d09cb7ce 100755 --- a/test/integration/test-policy-pinning +++ b/test/integration/test-policy-pinning @@ -302,7 +302,7 @@ Pin-Priority: 2147483648 " > rootdir/etc/apt/preferences testfailureequal "Reading package lists... -E: Cannot convert 2147483648 to integer - (34: Numerical result out of range) +E: Cannot convert 2147483648 to integer: out of range E: ${tmppath}/rootdir/etc/apt/preferences: Value 2147483648 is outside the range of valid pin priorities (-32768 to 32767)" \ aptget install -s coolstuff -o PinPriority=2147483648 -- cgit v1.2.3