remove listener
diff --git a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/performance/PerfConditionalBreakpointsTests.java b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/performance/PerfConditionalBreakpointsTests.java
index f3955c6..59c1b03 100644
--- a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/performance/PerfConditionalBreakpointsTests.java
+++ b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/performance/PerfConditionalBreakpointsTests.java
@@ -59,7 +59,8 @@
 
         fBP = createLineBreakpoint(22, fTypeName);
 
-        DebugPlugin.getDefault().addDebugEventListener(new BreakpointListener());
+		BreakpointListener listener = new BreakpointListener();
+        DebugPlugin.getDefault().addDebugEventListener(listener);
         ILaunchConfiguration config = getLaunchConfiguration(fTypeName);
         fTarget = launchAndTerminate(config, 5 * 60 * 1000);
         
@@ -71,6 +72,7 @@
         assertPerformance();
         
         removeAllBreakpoints();
+		DebugPlugin.getDefault().removeDebugEventListener(listener);
     }
 
     private synchronized void breakpointHit(IJavaThread thread) {