Bug 569911: Stop allowing OOB records to accumulate forever

Add a limit of 100,000 records to prevent OOM errors. Normally
only a few OOB records are needed, but in some cases like with
tdump, hundreds may be needed.

Change-Id: I967e0facc1dc326d94fa67b1d647417ee3cd8891
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/AbstractMIControl.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/AbstractMIControl.java
index 8db4f3b..a7b671b 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/AbstractMIControl.java
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/AbstractMIControl.java
@@ -1088,8 +1088,9 @@
 
 				fAccumulatedOOBRecords.add(oob);
 				// limit growth, but only if these are not responses to CLI commands
-				// Bug 302927 & 330608
-				if (fRxCommands.isEmpty() && fAccumulatedOOBRecords.size() > 20) {
+				// Bug 302927 & 330608 & 569911
+				if (fRxCommands.isEmpty() && fAccumulatedOOBRecords.size() > 20
+						|| fAccumulatedOOBRecords.size() > 100000) {
 					fAccumulatedOOBRecords.remove(0);
 				}