From ebf96a30d0122d35e271bad15f1f31a0a9100842 Mon Sep 17 00:00:00 2001
From: Ludovic Poitou <ludovic.poitou@forgerock.com>
Date: Sun, 24 Oct 2010 20:47:53 +0000
Subject: [PATCH] Sync commits from OpenDS by matthew_swift

---
 sdk/src/org/opends/sdk/requests/AbstractRequestImpl.java |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/sdk/src/org/opends/sdk/requests/AbstractRequestImpl.java b/sdk/src/org/opends/sdk/requests/AbstractRequestImpl.java
index e614f8d..310b594 100644
--- a/sdk/src/org/opends/sdk/requests/AbstractRequestImpl.java
+++ b/sdk/src/org/opends/sdk/requests/AbstractRequestImpl.java
@@ -36,6 +36,7 @@
 import org.opends.sdk.DecodeOptions;
 import org.opends.sdk.controls.Control;
 import org.opends.sdk.controls.ControlDecoder;
+import org.opends.sdk.controls.GenericControl;
 
 import com.sun.opends.sdk.util.Validator;
 
@@ -75,10 +76,15 @@
   AbstractRequestImpl(Request request) throws NullPointerException
   {
     Validator.ensureNotNull(request);
-    controls.addAll(request.getControls());
+    for (Control control : request.getControls())
+    {
+      // Create defensive copy.
+      controls.add(GenericControl.newControl(control));
+    }
   }
 
 
+
   /**
    * {@inheritDoc}
    */

--
Gitblit v1.10.0