* parse_pe.cc (exclusion::sort_and_check): Make error message a little more
explicit and ignore (hopefully) harmless region overlap.
This commit is contained in:
parent
f7f542063b
commit
b1e00863f3
|
@ -1,3 +1,8 @@
|
||||||
|
2003-09-17 Christopher Faylor <cgf@redhat.com>
|
||||||
|
|
||||||
|
* parse_pe.cc (exclusion::sort_and_check): Make error message a little
|
||||||
|
more explicit and ignore (hopefully) harmless region overlap.
|
||||||
|
|
||||||
2003-09-13 Christopher Faylor <cgf@redhat.com>
|
2003-09-13 Christopher Faylor <cgf@redhat.com>
|
||||||
|
|
||||||
* kill.c (forcekill): Wait for process to terminate even if
|
* kill.c (forcekill): Wait for process to terminate even if
|
||||||
|
|
|
@ -149,8 +149,8 @@ main (int argc, char **argv)
|
||||||
{
|
{
|
||||||
int sig = SIGTERM;
|
int sig = SIGTERM;
|
||||||
int force = 0;
|
int force = 0;
|
||||||
char *gotsig = NULL;
|
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
char *gotasig = NULL;
|
||||||
|
|
||||||
prog_name = strrchr (argv[0], '/');
|
prog_name = strrchr (argv[0], '/');
|
||||||
if (prog_name == NULL)
|
if (prog_name == NULL)
|
||||||
|
@ -173,8 +173,8 @@ main (int argc, char **argv)
|
||||||
switch (ch)
|
switch (ch)
|
||||||
{
|
{
|
||||||
case 's':
|
case 's':
|
||||||
gotsig = optarg;
|
gotasig = optarg;
|
||||||
sig = getsig (gotsig);
|
sig = getsig (gotasig);
|
||||||
break;
|
break;
|
||||||
case 'l':
|
case 'l':
|
||||||
if (!optarg)
|
if (!optarg)
|
||||||
|
@ -200,12 +200,12 @@ main (int argc, char **argv)
|
||||||
print_version ();
|
print_version ();
|
||||||
break;
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
if (gotsig)
|
if (gotasig)
|
||||||
usage ();
|
usage ();
|
||||||
optreset = 1;
|
optreset = 1;
|
||||||
optind = 1 + av - argv;
|
optind = 1 + av - argv;
|
||||||
gotsig = *av + 1;
|
gotasig = *av + 1;
|
||||||
sig = getsig (gotsig);
|
sig = getsig (gotasig);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
usage ();
|
usage ();
|
||||||
|
@ -213,7 +213,7 @@ main (int argc, char **argv)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
test_for_unknown_sig (sig, gotsig);
|
test_for_unknown_sig (sig, gotasig);
|
||||||
|
|
||||||
argv += optind;
|
argv += optind;
|
||||||
while (*argv != NULL)
|
while (*argv != NULL)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* parse_pe.cc
|
/* parse_pe.cc
|
||||||
|
|
||||||
Copyright 1999,2000,2001 Red Hat, Inc.
|
Copyright 1999, 2000, 2001, 2002, 2003 Red Hat, Inc.
|
||||||
|
|
||||||
Written by Egor Duda <deo@logos-m.ru>
|
Written by Egor Duda <deo@logos-m.ru>
|
||||||
|
|
||||||
|
@ -47,9 +47,11 @@ exclusion::sort_and_check ()
|
||||||
for (process_mem_region * p = region; p < region + last - 1; p++)
|
for (process_mem_region * p = region; p < region + last - 1; p++)
|
||||||
{
|
{
|
||||||
process_mem_region *q = p + 1;
|
process_mem_region *q = p + 1;
|
||||||
|
if (q == p + 1)
|
||||||
|
continue;
|
||||||
if (p->base + size > q->base)
|
if (p->base + size > q->base)
|
||||||
{
|
{
|
||||||
fprintf (stderr, "region error @ %08x", (unsigned) p->base);
|
fprintf (stderr, "region error @ (%8p + %d) > %8p\n", (unsigned) p->base, size, q->base);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue