From a19fefdc57f5eafcb682175f2b2bcd8f6f366c90 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 10 Mar 2011 01:10:19 +0000 Subject: [PATCH] * fileread.cc (File_read::clear_views): Don't delete the whole file view. --- gold/ChangeLog | 5 +++++ gold/fileread.cc | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gold/ChangeLog b/gold/ChangeLog index c02a174494..bbb8185b47 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,8 @@ +2011-03-09 Ian Lance Taylor + + * fileread.cc (File_read::clear_views): Don't delete the whole + file view. + 2011-03-08 Ian Lance Taylor PR gold/12525 diff --git a/gold/fileread.cc b/gold/fileread.cc index 654e47b424..36485a915b 100644 --- a/gold/fileread.cc +++ b/gold/fileread.cc @@ -717,7 +717,9 @@ File_read::clear_views(Clear_views_mode mode) should_delete = false; else if (mode == CLEAR_VIEWS_ALL) should_delete = true; - else if (p->second->should_cache() && keep_files_mapped) + else if ((p->second->should_cache() + || p->second == this->whole_file_view_) + && keep_files_mapped) should_delete = false; else if (this->object_count_ > 1 && p->second->accessed()