8220095: Assertion failure when symlink (with different name) is used for lib/modules file

Removed confusing function ClassLoader::is_modules_image(char*)

Reviewed-by: lfoltan, ccheung
This commit is contained in:
Jiangli Zhou 2019-03-23 21:51:07 -07:00 committed by Ioi Lam
parent 26210b4566
commit 223e1c6e42
7 changed files with 111 additions and 15 deletions

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -38,12 +38,14 @@ void ClassFileStream::truncated_file_error(TRAPS) const {
ClassFileStream::ClassFileStream(const u1* buffer,
int length,
const char* source,
bool verify_stream) :
bool verify_stream,
bool from_boot_loader_modules_image) :
_buffer_start(buffer),
_buffer_end(buffer + length),
_current(buffer),
_source(source),
_need_verify(verify_stream) {}
_need_verify(verify_stream),
_from_boot_loader_modules_image(from_boot_loader_modules_image) {}
const u1* ClassFileStream::clone_buffer() const {
u1* const new_buffer_start = NEW_RESOURCE_ARRAY(u1, length());
@ -69,7 +71,8 @@ const ClassFileStream* ClassFileStream::clone() const {
return new ClassFileStream(new_buffer_start,
length(),
clone_source(),
need_verify());
need_verify(),
from_boot_loader_modules_image());
}
uint64_t ClassFileStream::compute_fingerprint() const {