提交 9f304b4b 编写于 作者: F fmatte

8239055: Wrong implementation of VMState.hasListener

Summary: Correct the VMState.hasListener implementation to return WeakReference<VMListener> type
Reviewed-by: sspitsyn, poonam
上级 d8ac258a
/*
* Copyright (c) 1999, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1999, 2020, 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
......@@ -172,7 +172,14 @@ class VMState {
}
synchronized boolean hasListener(VMListener listener) {
return listeners.contains(listener);
Iterator<WeakReference<VMListener>> iter = listeners.iterator();
while (iter.hasNext()) {
WeakReference<VMListener> ref = iter.next();
if (listener.equals(ref.get())) {
return true;
}
}
return false;
}
synchronized void removeListener(VMListener listener) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册