Index: modules/swing/src/main/java/common/javax/swing/undo/UndoManager.java =================================================================== --- modules/swing/src/main/java/common/javax/swing/undo/UndoManager.java (revision 495616) +++ modules/swing/src/main/java/common/javax/swing/undo/UndoManager.java (working copy) @@ -232,7 +232,7 @@ protected void trimForLimit() { // check that we need to trim - if (limit < edits.size()) { + if ((limit > 0) && (getLimit() < edits.size())) { // indexOfNextAdd is a center for trimming int beginning = indexOfNextAdd - limit / 2; if (beginning < 0) {