Move string/testcopy.c to test-driver.c and xmalloc (bug 19667)

Message ID alpine.DEB.2.20.1802012036220.13065@digraph.polyomino.org.uk
State New, archived
Headers

Commit Message

Joseph Myers Feb. 1, 2018, 8:36 p.m. UTC
  Bug 19667 reports unchecked malloc calls in the test
string/testcopy.c.  This patch makes that test use xmalloc and the
support/test-driver.c test framework.

Tested for x86_64.

2018-02-01  Joseph Myers  <joseph@codesourcery.com>

	[BZ #19667]
	* string/testcopy.c: Include <support/support.h>.  Do not include
	<malloc.h>.  Use <support/test-driver.c>.
	(main): Rename to do_test.  Make static.  Use xmalloc instead of
	malloc.
  

Comments

Joseph Myers Feb. 6, 2018, 6:01 p.m. UTC | #1
Ping.  This patch 
<https://sourceware.org/ml/libc-alpha/2018-02/msg00033.html> is pending 
review.
  
Adhemerval Zanella Netto Feb. 6, 2018, 6:45 p.m. UTC | #2
On 01/02/2018 18:36, Joseph Myers wrote:
> Bug 19667 reports unchecked malloc calls in the test
> string/testcopy.c.  This patch makes that test use xmalloc and the
> support/test-driver.c test framework.
> 
> Tested for x86_64.
> 
> 2018-02-01  Joseph Myers  <joseph@codesourcery.com>
> 
> 	[BZ #19667]
> 	* string/testcopy.c: Include <support/support.h>.  Do not include
> 	<malloc.h>.  Use <support/test-driver.c>.
> 	(main): Rename to do_test.  Make static.  Use xmalloc instead of
> 	malloc.

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>

> 
> diff --git a/string/testcopy.c b/string/testcopy.c
> index 61ede1c..f14917b 100644
> --- a/string/testcopy.c
> +++ b/string/testcopy.c
> @@ -19,10 +19,10 @@
>  #include <stdlib.h>
>  #include <stdio.h>
>  #include <string.h>
> -#include <malloc.h>
> +#include <support/support.h>
>  
> -int
> -main (void)
> +static int
> +do_test (void)
>  {
>    char *mem, *memp;
>    char *rand_mem;
> @@ -34,10 +34,10 @@ main (void)
>  
>    max_size = 256;
>  
> -  mem = malloc (max_size + 2 * max_size + 2 * space_around);
> -  rand_mem = malloc (max_size);
> -  lo_around = malloc (space_around);
> -  hi_around = malloc (space_around);
> +  mem = xmalloc (max_size + 2 * max_size + 2 * space_around);
> +  rand_mem = xmalloc (max_size);
> +  lo_around = xmalloc (space_around);
> +  hi_around = xmalloc (space_around);
>    memp = mem + space_around;
>  
>    /* Fill RAND_MEM with random bytes, each non-zero.  */
> @@ -105,3 +105,5 @@ main (void)
>  
>    return 0;
>  }
> +
> +#include <support/test-driver.c>
>
  

Patch

diff --git a/string/testcopy.c b/string/testcopy.c
index 61ede1c..f14917b 100644
--- a/string/testcopy.c
+++ b/string/testcopy.c
@@ -19,10 +19,10 @@ 
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
-#include <malloc.h>
+#include <support/support.h>
 
-int
-main (void)
+static int
+do_test (void)
 {
   char *mem, *memp;
   char *rand_mem;
@@ -34,10 +34,10 @@  main (void)
 
   max_size = 256;
 
-  mem = malloc (max_size + 2 * max_size + 2 * space_around);
-  rand_mem = malloc (max_size);
-  lo_around = malloc (space_around);
-  hi_around = malloc (space_around);
+  mem = xmalloc (max_size + 2 * max_size + 2 * space_around);
+  rand_mem = xmalloc (max_size);
+  lo_around = xmalloc (space_around);
+  hi_around = xmalloc (space_around);
   memp = mem + space_around;
 
   /* Fill RAND_MEM with random bytes, each non-zero.  */
@@ -105,3 +105,5 @@  main (void)
 
   return 0;
 }
+
+#include <support/test-driver.c>