From b6d1a1d52671a8aa58a29900f521edcd1a534ecd Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Wed, 13 Feb 2002 19:00:47 +0000 Subject: [PATCH] From 2002-01-18 Greg McGary : * (create_mem_region): Disallow useless empty region. Regions are half-open intervals, so allow [A..B) [B..C) as non-overlapping. --- gdb/ChangeLog | 6 ++++++ gdb/memattr.c | 9 +++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 6d826dbd2f..6eaad95b2a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2002-02-13 Andrew Cagney + + From 2002-01-18 Greg McGary : + * (create_mem_region): Disallow useless empty region. Regions are + half-open intervals, so allow [A..B) [B..C) as non-overlapping. + 2002-02-13 Michael Chastain * defs.h: Kill CONST_PTR. diff --git a/gdb/memattr.c b/gdb/memattr.c index e8eb56a458..8d7b0d8c55 100644 --- a/gdb/memattr.c +++ b/gdb/memattr.c @@ -45,9 +45,10 @@ create_mem_region (CORE_ADDR lo, CORE_ADDR hi, { struct mem_region *n, *new; - if (lo > hi) + /* lo == hi is a useless empty region */ + if (lo >= hi) { - printf_unfiltered ("invalid memory region\n"); + printf_unfiltered ("invalid memory region: low >= high\n"); return NULL; } @@ -55,8 +56,8 @@ create_mem_region (CORE_ADDR lo, CORE_ADDR hi, while (n) { /* overlapping node */ - if ((lo >= n->lo && lo <= n->hi) || - (hi >= n->lo && hi <= n->hi)) + if ((lo >= n->lo && lo < n->hi) || + (hi > n->lo && hi <= n->hi)) { printf_unfiltered ("overlapping memory region\n"); return NULL;