From 59400f76e5bf9dac482e56ec8518728387d19ce4 Mon Sep 17 00:00:00 2001 From: vinnie Date: Mon, 7 Feb 2011 09:11:26 +0000 Subject: [PATCH] 7017486: Need synchronized access when flushing the LDAP request queue Reviewed-by: alanb --- .../classes/com/sun/jndi/ldap/Connection.java | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/share/classes/com/sun/jndi/ldap/Connection.java b/src/share/classes/com/sun/jndi/ldap/Connection.java index dec38eb75..94067617a 100644 --- a/src/share/classes/com/sun/jndi/ldap/Connection.java +++ b/src/share/classes/com/sun/jndi/ldap/Connection.java @@ -656,14 +656,17 @@ public final class Connection implements Runnable { } nparent = notifyParent; } - } - if (nparent) { - LdapRequest ldr = pendingRequests; - while (ldr != null) { - ldr.notify(); - ldr = ldr.next; + if (nparent) { + LdapRequest ldr = pendingRequests; + while (ldr != null) { + + synchronized (ldr) { + ldr.notify(); + ldr = ldr.next; + } + } + parent.processConnectionClosure(); } - parent.processConnectionClosure(); } } -- GitLab