diff options
Diffstat (limited to 'gold/fileread.cc')
-rw-r--r-- | gold/fileread.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gold/fileread.cc b/gold/fileread.cc index 654e47b..36485a9 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() |