mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 07:14:30 +02:00
8005056: NPG: Crash after redefining java.lang.Object
Need to walk array class vtables replacing old methods too if j.l.o redefined Reviewed-by: sspitsyn, dcubed, ctornqvi
This commit is contained in:
parent
9a1cd52a0f
commit
7a409b13e0
10 changed files with 204 additions and 115 deletions
|
@ -253,22 +253,6 @@ void Dictionary::classes_do(void f(Klass*, TRAPS), TRAPS) {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
// All classes, and their class loaders
|
||||
// (added for helpers that use HandleMarks and ResourceMarks)
|
||||
// Don't iterate over placeholders
|
||||
void Dictionary::classes_do(void f(Klass*, ClassLoaderData*, TRAPS), TRAPS) {
|
||||
for (int index = 0; index < table_size(); index++) {
|
||||
for (DictionaryEntry* probe = bucket(index);
|
||||
probe != NULL;
|
||||
probe = probe->next()) {
|
||||
Klass* k = probe->klass();
|
||||
f(k, probe->loader_data(), CHECK);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// All classes, and their class loaders
|
||||
// Don't iterate over placeholders
|
||||
void Dictionary::classes_do(void f(Klass*, ClassLoaderData*)) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue