Fix scanf %s in lsof.

am: 008efb756f

* commit '008efb756fea8a9e66a1825b546e9dc392c72bec':
  Fix scanf %s in lsof.

Change-Id: I608ae2094649617308b45571df1b649724ec8ac3
This commit is contained in:
Elliott Hughes 2016-05-24 22:10:19 +00:00 committed by android-build-merger
commit 491dfb11b7

View file

@ -99,13 +99,12 @@ out:
static void print_maps(struct pid_info_t* info)
{
FILE *maps;
char buffer[PATH_MAX + 100];
size_t offset;
int major, minor;
char device[10];
long int inode;
char file[PATH_MAX];
char file[1024];
strlcat(info->path, "maps", sizeof(info->path));
@ -113,8 +112,8 @@ static void print_maps(struct pid_info_t* info)
if (!maps)
goto out;
while (fscanf(maps, "%*x-%*x %*s %zx %5s %ld %s\n", &offset, device, &inode,
file) == 4) {
while (fscanf(maps, "%*x-%*x %*s %zx %5s %ld %1023s\n",
&offset, device, &inode, file) == 4) {
// We don't care about non-file maps
if (inode == 0 || !strcmp(device, "00:00"))
continue;