mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
elf: Fix wrong fscanf usage on tst-pldd
The fix doneb2cd93fce6
does not really work since macro strification does not expand the sizeof nor the arithmetic operation. Checked on x86_64-linux-gnu. (cherry picked from commitc353689e49
)
This commit is contained in:
parent
42b9d7def8
commit
405b8ae135
@ -108,15 +108,16 @@ do_test (void)
|
||||
loader and libc. */
|
||||
{
|
||||
pid_t pid;
|
||||
char buffer[512];
|
||||
#define STRINPUT(size) "%" # size "s"
|
||||
#define BUFFERLEN 511
|
||||
char buffer[BUFFERLEN + 1];
|
||||
#define STRINPUT(size) XSTRINPUT(size)
|
||||
#define XSTRINPUT(size) "%" # size "s"
|
||||
|
||||
FILE *out = fmemopen (pldd.out.buffer, pldd.out.length, "r");
|
||||
TEST_VERIFY (out != NULL);
|
||||
|
||||
/* First line is in the form of <pid>: <full path of executable> */
|
||||
TEST_COMPARE (fscanf (out, "%u: " STRINPUT (sizeof (buffer) - 1), &pid,
|
||||
buffer), 2);
|
||||
TEST_COMPARE (fscanf (out, "%u: " STRINPUT (BUFFERLEN), &pid, buffer), 2);
|
||||
|
||||
TEST_COMPARE (pid, *target_pid_ptr);
|
||||
TEST_COMPARE (strcmp (basename (buffer), "tst-pldd"), 0);
|
||||
|
Loading…
Reference in New Issue
Block a user