Avoid fall-through in test-container if execlp fails.

One of the implicit-fallthrough warnings from compiling glibc with
-Wextra appears to indicate an actual bug: the test-container code
could fall through inappropriately if execlp returns (which only
occurs on error).  This patch adds appropriate error handling in this
case to avoid that fall-through.

Tested for x86_64.

	* support/test-container.c (recursive_remove): Use FAIL_EXIT1 if
	execlp returns.
This commit is contained in:
Joseph Myers 2019-02-13 13:34:24 +00:00
parent 16f87cfd63
commit 86140c6223
2 changed files with 6 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2019-02-13 Joseph Myers <joseph@codesourcery.com>
* support/test-container.c (recursive_remove): Use FAIL_EXIT1 if
execlp returns.
2019-02-12 Wilco Dijkstra <wdijkstr@arm.com>
* benchtests/bench-strcasecmp.c (stupid_strcasecmp): Remove.

View File

@ -361,6 +361,7 @@ recursive_remove (char *path)
case 0:
/* Child. */
execlp ("rm", "rm", "-rf", path, NULL);
FAIL_EXIT1 ("exec rm: %m");
default:
/* Parent. */
waitpid (child, &status, 0);