On Sun, Dec 5, 2010 at 9:31 AM, Matt Turner <[email protected]> wrote: > On Sun, Dec 5, 2010 at 9:36 AM, Alan Coopersmith > <[email protected]> wrote: >> configure.ac:126: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected >> in body >> ../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... >> ../../lib/autoconf/general.m4:2730: _AC_RUN_IFELSE is expanded from... >> ../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from... >> ../../lib/autoconf/general.m4:2749: AC_RUN_IFELSE is expanded from... >> aclocal.m4:1952: XORG_CHECK_MALLOC_ZERO is expanded from... >> configure.ac:126: the top level >> >> Also, calloc() takes two arguments, as the compiler points out when >> you #include <stdlib.h> instead of faking it badly. >> >> Signed-off-by: Alan Coopersmith <[email protected]> >> --- >> xorg-macros.m4.in | 14 ++++++-------- >> 1 files changed, 6 insertions(+), 8 deletions(-) >> >> diff --git a/xorg-macros.m4.in b/xorg-macros.m4.in >> index fe29881..c7df523 100644 >> --- a/xorg-macros.m4.in >> +++ b/xorg-macros.m4.in >> @@ -904,18 +904,16 @@ AC_ARG_ENABLE(malloc0returnsnull, >> >> AC_MSG_CHECKING([whether malloc(0) returns NULL]) >> if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then >> - AC_RUN_IFELSE([ >> -char *malloc(); >> -char *realloc(); >> -char *calloc(); >> -main() { >> + AC_RUN_IFELSE([AC_LANG_PROGRAM([ >> +#include <stdlib.h> >> +],[ >> char *m0, *r0, *c0, *p; >> m0 = malloc(0); >> p = malloc(10); >> r0 = realloc(p,0); >> - c0 = calloc(0); >> - exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1); >> -}], >> + c0 = calloc(0,10); >> + exit((m0 == 0 || r0 == 0 || c0 == 0) ? 0 : 1); >> +])], >> [MALLOC_ZERO_RETURNS_NULL=yes], >> [MALLOC_ZERO_RETURNS_NULL=no], >> [MALLOC_ZERO_RETURNS_NULL=yes]) >> -- >> 1.7.3.2 > > I'm not particularly familiar with autotools, but this looks good. I > initially thought the malloc(10) was leaking, but now I see that it is > realloc()'d to 0. > > Reviewed-by: Matt Turner <[email protected]>
It doesn't really matters if there is a leak since configure is just running this little test program and checking the return value. Looks good to me. Reviewed-by: Dan Nicholson <[email protected]> _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
