diff options
Diffstat (limited to 'gprof/gmon_io.c')
-rw-r--r-- | gprof/gmon_io.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gprof/gmon_io.c b/gprof/gmon_io.c index 067323c..7e0a1a0 100644 --- a/gprof/gmon_io.c +++ b/gprof/gmon_io.c @@ -251,6 +251,15 @@ DEFUN (gmon_out_read, (filename), const char *filename) printf ("[gmon_out_read] samp_bytes %d hist_num_bins %d\n", samp_bytes, hist_num_bins)); + /* Make sure that we have sensible values. */ + if (samp_bytes < 0 || lowpc > highpc) + { + fprintf (stderr, + _("%s: file '%s' does not appear to be in gmon.out format\n"), + whoami, filename); + done (1); + } + if (hist_num_bins) { ++nhist; |