aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos O'Donell <carlos@redhat.com>2020-04-29 16:31:29 -0400
committerCarlos O'Donell <carlos@redhat.com>2020-04-30 16:28:07 -0400
commit183083c35972611e7786c7ee0c96d7da571631ed (patch)
tree29b7a4b0b8dc911419d302aa0a0bfdbe94cd4d3e
parentdf6c63ebbce9679e755f0ecc716a33babee5d008 (diff)
downloadglibc-183083c35972611e7786c7ee0c96d7da571631ed.zip
glibc-183083c35972611e7786c7ee0c96d7da571631ed.tar.gz
glibc-183083c35972611e7786c7ee0c96d7da571631ed.tar.bz2
support: Set errno before testing it.
In test-conainer we should set errno to 0 before calling strtol, and check after with TEST_COMPARE. In tst-support_capture_subprocess we should set errno to 0 before checking it after the call to strtol. Tested on x86_64. Reviewed-by: DJ Delorie <dj@redhat.com>
-rw-r--r--support/test-container.c2
-rw-r--r--support/tst-support_capture_subprocess.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/support/test-container.c b/support/test-container.c
index 08d5195..afc23db 100644
--- a/support/test-container.c
+++ b/support/test-container.c
@@ -940,7 +940,9 @@ main (int argc, char **argv)
else if (nt == 3 && strcmp (the_words[0], "chmod") == 0)
{
long int m;
+ errno = 0;
m = strtol (the_words[1], NULL, 0);
+ TEST_COMPARE (errno, 0);
if (chmod (the_words[2], m) < 0)
FAIL_EXIT1 ("chmod %s: %s\n",
the_words[2], strerror (errno));
diff --git a/support/tst-support_capture_subprocess.c b/support/tst-support_capture_subprocess.c
index 67bbc1e..6094dba 100644
--- a/support/tst-support_capture_subprocess.c
+++ b/support/tst-support_capture_subprocess.c
@@ -133,7 +133,9 @@ static int
parse_int (const char *str)
{
char *endptr;
- long int ret = strtol (str, &endptr, 10);
+ long int ret;
+ errno = 0;
+ ret = strtol (str, &endptr, 10);
TEST_COMPARE (errno, 0);
TEST_VERIFY (ret >= 0 && ret <= INT_MAX);
return ret;