src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java
--- a/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java Tue Sep 05 13:40:14 2017 +0200
+++ b/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentImpl.java Wed Oct 18 13:25:49 2017 -0700
@@ -1,5 +1,6 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
+ * @LastModified: Oct 2017
*/
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
@@ -477,7 +478,7 @@
/**
* Retreive event listener registered on a given node
*/
- protected List getEventListeners(NodeImpl n) {
+ protected List<LEntry> getEventListeners(NodeImpl n) {
if (eventListeners == null) {
return null;
}
@@ -679,6 +680,7 @@
* method was invoked by an EventListener; otherwise false.
*/
@Override
+ @SuppressWarnings({"rawtypes", "unchecked"})
protected boolean dispatchEvent(NodeImpl node, Event event) {
if (event == null) return false;
@@ -736,9 +738,9 @@
// Handle all capturing listeners on this node
NodeImpl nn = (NodeImpl) pv.get(j);
evt.currentTarget = nn;
- List<LEntry> nodeListeners = getEventListeners(nn);
+ ArrayList<LEntry> nodeListeners = (ArrayList<LEntry>)getEventListeners(nn);
if (nodeListeners != null) {
- List<LEntry> nl = (List)((ArrayList)nodeListeners).clone();
+ List<LEntry> nl = (ArrayList<LEntry>)nodeListeners.clone();
// call listeners in the order in which they got registered
int nlsize = nl.size();
for (int i = 0; i < nlsize; i++) {
@@ -765,9 +767,9 @@
// node are _not_ invoked, even during the capture phase.
evt.eventPhase = Event.AT_TARGET;
evt.currentTarget = node;
- List<LEntry> nodeListeners = getEventListeners(node);
+ ArrayList<LEntry> nodeListeners = (ArrayList<LEntry>)getEventListeners(node);
if (!evt.stopPropagation && nodeListeners != null) {
- List<LEntry> nl = (List)((ArrayList)nodeListeners).clone();
+ List<LEntry> nl = (ArrayList<LEntry>)nodeListeners.clone();
// call listeners in the order in which they got registered
int nlsize = nl.size();
for (int i = 0; i < nlsize; i++) {
@@ -798,9 +800,9 @@
// Handle all bubbling listeners on this node
NodeImpl nn = (NodeImpl) pv.get(j);
evt.currentTarget = nn;
- nodeListeners = getEventListeners(nn);
+ nodeListeners = (ArrayList<LEntry>)getEventListeners(nn);
if (nodeListeners != null) {
- List<LEntry> nl = (List)((ArrayList)nodeListeners).clone();
+ List<LEntry> nl = (ArrayList<LEntry>)nodeListeners.clone();
// call listeners in the order in which they got
// registered
int nlsize = nl.size();