Index: src/wp-admin/js/edit-comments.js
===================================================================
--- src/wp-admin/js/edit-comments.js	(revision 38496)
+++ src/wp-admin/js/edit-comments.js	(working copy)
@@ -288,6 +288,11 @@
 			$('.avatar', el).first().clone().prependTo('#undo-' + id + ' .' + action + '-undo-inside');
 
 			a.click(function( e ){
+
+				// Abort undo if there is an unfinished AJAX request involving the same comment.
+				if ( settings.xhrs && 'undefined' !== typeof settings.xhrs['comment-' + id] && 4 !== settings.xhrs['comment-' + id].readyState ) {
+					return false;
+				}
 				e.preventDefault();
 				e.stopPropagation(); // ticket #35904
 				list.wpList.del(this);
Index: src/wp-includes/js/wp-lists.js
===================================================================
--- src/wp-includes/js/wp-lists.js	(revision 38496)
+++ src/wp-includes/js/wp-lists.js	(working copy)
@@ -17,6 +17,8 @@
 		dimBefore: null, dimAfter: null
 	},
 
+	xhrs: {},
+
 	nonce: function(e,s) {
 		var url = wpAjax.unserialize(e.attr('href'));
 		return s.nonce || url._ajax_nonce || $('#' + s.element + ' input[name="_ajax_nonce"]').val() || url._wpnonce || $('#' + s.element + ' input[name="_wpnonce"]').val() || 0;
@@ -160,6 +162,16 @@
 	 * @return {boolean}
 	 */
 	ajaxDel: function( e, s ) {
+
+		// Clear all finished AJAX requests from xhrs object.
+		if ( 'undefined' !== typeof wpList.xhrs ) {
+			for ( var key in wpList.xhrs ) {
+				if ( 4 === wpList.xhrs[ key ].readyState ) {
+					delete wpList.xhrs[ key ];
+				}
+			}
+		}
+
 		e = $(e);
 		s = s || {};
 		var list = this, data = wpList.parseData(e,'delete'), element, res, rres;
@@ -168,6 +180,11 @@
 
 		s.element = data[2] || s.element || null;
 
+		// Return if there is already an AJAX request in progress involving the same element.
+		if ( wpList.xhrs && 'undefined' !== typeof wpList.xhrs[ s.element ] && 4 !== wpList.xhrs[ s.element ].readyState ) {
+			return false;
+		}
+
 		if ( data[3] )
 			s.delColor = '#' + data[3];
 		else
@@ -225,7 +242,8 @@
 			}
 		};
 
-		$.ajax( s );
+		wpList.xhrs = wpList.xhrs || {};
+		wpList.xhrs[ s.element ] = $.ajax( s );
 		return false;
 	},
 
@@ -233,6 +251,15 @@
 		if ( $(e).parent().css('display') == 'none' ) // Prevent hidden links from being clicked by hotkeys
 			return false;
 
+		// Clear all finished AJAX requests from xhrs object.
+		if ( 'undefined' !== typeof wpList.xhrs ) {
+			for ( var key in wpList.xhrs ) {
+				if ( 4 === wpList.xhrs[ key ].readyState ) {
+					delete wpList.xhrs[ key ];
+				}
+			}
+		}
+
 		e = $(e);
 		s = s || {};
 
@@ -243,6 +270,12 @@
 		s.element = data[2] || s.element || null;
 		s.dimClass =  data[3] || s.dimClass || null;
 
+		// Return if there is already an AJAX request in progress involving the same element.
+		if ( wpList.xhrs && 'undefined' !== typeof wpList.xhrs[ s.element ] && 4 !== wpList.xhrs[ s.element ].readyState ) {
+			return false;
+		}
+
+
 		if ( data[4] )
 			s.dimAddColor = '#' + data[4];
 		else
@@ -330,7 +363,8 @@
 			}
 		};
 
-		$.ajax( s );
+		wpList.xhrs = wpList.xhrs || {};
+		wpList.xhrs[ s.element ] = $.ajax( s );
 		return false;
 	},
 
@@ -487,7 +521,9 @@
 	this.each( function() {
 		var _this = this;
 
-		this.wpList = { settings: $.extend( {}, wpList.settings, { what: wpList.parseData(this,'list')[1] || '' }, settings ) };
+		this.wpList = {
+			settings: $.extend( {}, wpList.settings, { what: wpList.parseData(this,'list')[1] || '' }, { xhrs: wpList.xhrs }, settings )
+		};
 		$.each( fs, function(i,f) { _this.wpList[i] = function( e, s ) { return wpList[f].call( _this, e, s ); }; } );
 	} );
 
