mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-03 00:10:10 +00:00
* stdlib/tst-setcontext.c (main): If makecontext does nothing,
presume it's the stub and bail without error.
This commit is contained in:
parent
8fea756af2
commit
37076fcc4c
@ -1,5 +1,8 @@
|
|||||||
2002-08-30 Roland McGrath <roland@redhat.com>
|
2002-08-30 Roland McGrath <roland@redhat.com>
|
||||||
|
|
||||||
|
* stdlib/tst-setcontext.c (main): If makecontext does nothing,
|
||||||
|
presume it's the stub and bail without error.
|
||||||
|
|
||||||
* nss/getnssent_r.c (__nss_getent_r): Return ENOENT if status is
|
* nss/getnssent_r.c (__nss_getent_r): Return ENOENT if status is
|
||||||
neither SUCCESS nor TRYAGAIN (see 2002-08-25 change [PR libc/4259]).
|
neither SUCCESS nor TRYAGAIN (see 2002-08-25 change [PR libc/4259]).
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2001 Free Software Foundation, Inc.
|
/* Copyright (C) 2001,02 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -19,6 +19,7 @@
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
#include <ucontext.h>
|
#include <ucontext.h>
|
||||||
|
|
||||||
static ucontext_t ctx[3];
|
static ucontext_t ctx[3];
|
||||||
@ -104,7 +105,17 @@ main (void)
|
|||||||
ctx[1].uc_stack.ss_sp = st1;
|
ctx[1].uc_stack.ss_sp = st1;
|
||||||
ctx[1].uc_stack.ss_size = sizeof st1;
|
ctx[1].uc_stack.ss_size = sizeof st1;
|
||||||
ctx[1].uc_link = &ctx[0];
|
ctx[1].uc_link = &ctx[0];
|
||||||
makecontext (&ctx[1], (void (*) (void)) f1, 4, 1, 2, 3, -4);
|
{
|
||||||
|
ucontext_t tempctx = ctx[1];
|
||||||
|
makecontext (&ctx[1], (void (*) (void)) f1, 4, 1, 2, 3, -4);
|
||||||
|
|
||||||
|
/* Without this check, a stub makecontext can make us spin forever. */
|
||||||
|
if (memcmp (&tempctx, &ctx[1], sizeof ctx[1]) == 0)
|
||||||
|
{
|
||||||
|
puts ("makecontext was a no-op, presuming not implemented");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (getcontext (&ctx[2]) != 0)
|
if (getcontext (&ctx[2]) != 0)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user