src/hotspot/share/classfile/resolutionErrors.cpp
changeset 49821 02c08e20d66c
parent 47216 71c04702a3d5
child 51375 b812a85b3aa4
equal deleted inserted replaced
49820:663f5d90f0e8 49821:02c08e20d66c
     1 /*
     1 /*
     2  * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   123     for (ResolutionErrorEntry** p = bucket_addr(i); *p != NULL; ) {
   123     for (ResolutionErrorEntry** p = bucket_addr(i); *p != NULL; ) {
   124       ResolutionErrorEntry* entry = *p;
   124       ResolutionErrorEntry* entry = *p;
   125       assert(entry->pool() != (ConstantPool*)NULL, "resolution error table is corrupt");
   125       assert(entry->pool() != (ConstantPool*)NULL, "resolution error table is corrupt");
   126       ConstantPool* pool = entry->pool();
   126       ConstantPool* pool = entry->pool();
   127       assert(pool->pool_holder() != NULL, "Constant pool without a class?");
   127       assert(pool->pool_holder() != NULL, "Constant pool without a class?");
   128       ClassLoaderData* loader_data =
   128 
   129               pool->pool_holder()->class_loader_data();
   129       if (pool->pool_holder()->is_loader_alive()) {
   130       if (!loader_data->is_unloading()) {
       
   131         p = entry->next_addr();
   130         p = entry->next_addr();
   132       } else {
   131       } else {
   133         *p = entry->next();
   132         *p = entry->next();
   134         free_entry(entry);
   133         free_entry(entry);
   135       }
   134       }