diff --git a/apps/user_ldap/js/ldapFilter.js b/apps/user_ldap/js/ldapFilter.js
index 4db8555f639fa96c5050870b5b76b27553edd4c9..63baec24eccfe7994e36108de7e8bb80992884e6 100644
--- a/apps/user_ldap/js/ldapFilter.js
+++ b/apps/user_ldap/js/ldapFilter.js
@@ -159,17 +159,17 @@ LdapFilter.prototype.findFeatures = function() {
  * resolving the passed status variable will fire up counting
  * @param {object} status an instance of $.Deferred
  */
-LdapFilter.prototype.beforeUpdateCount = function(status) {
-	return LdapWizard.runDetectors(this.target, function() {
+LdapFilter.prototype.beforeUpdateCount = function() {
+	var status = $.Deferred();
+	LdapWizard.runDetectors(this.target, function() {
 		status.resolve();
 	});
+	return status;
 };
 
 LdapFilter.prototype.updateCount = function(doneCallback) {
-	var beforeUpdateCountDone = $.Deferred();
-	this.beforeUpdateCount(beforeUpdateCountDone);
 	var filter = this;
-	$.when(beforeUpdateCountDone).done(function() {
+	$.when(this.beforeUpdateCount()).done(function() {
 		if(filter.target === 'User') {
 			LdapWizard.countUsers(doneCallback);
 		} else if (filter.target === 'Group') {