resolverErrors.remove(existing);
	public boolean updateBundle(BundleDescription newDescription) {		BundleDescriptionImpl existing = (BundleDescriptionImpl) bundleDescriptions.get((BundleDescriptionImpl) newDescription);		if (existing == null)			return false;		if (!bundleDescriptions.remove(existing))			return false;		resolvedBundles.remove(existing);		if (!basicAddBundle(newDescription))			return false;		resolved = false;		getDelta().recordBundleUpdated((BundleDescriptionImpl) newDescription);		if (resolver != null) {			boolean pending = existing.getDependents().length > 0;			resolver.bundleUpdated(newDescription, existing, pending);			if (pending) {				getDelta().recordBundleRemovalPending(existing);				removalPendings.add(existing);			} else {				// an existing bundle has been updated with no dependents it can safely be unresolved now				synchronized (this) {					try {						resolving = true;						resolveBundle(existing, false, null, null, null, null);					} finally {						resolving = false;					}				}			}		}		return true;	}