if (bundleEvent != null) { synchronized (framework.bundleEvent) {
synchronized (framework.bundleEvent) { if (bundleEvent != null) {
	public void removeBundleListener(BundleListener listener) {		checkValid();		if (Debug.DEBUG && Debug.DEBUG_EVENTS) {			String listenerName = listener.getClass().getName() + "@" + Integer.toHexString(listener.hashCode()); //$NON-NLS-1$			Debug.println("removeBundleListener[" + bundle + "](" + listenerName + ")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$		}		if (listener instanceof SynchronousBundleListener) {			framework.checkAdminPermission(getBundle(), AdminPermission.LISTENER);			if (bundleEventSync != null) {				synchronized (framework.bundleEventSync) {					bundleEventSync.removeListener(listener);				}			}		} else {			if (bundleEvent != null) {				synchronized (framework.bundleEvent) {					bundleEvent.removeListener(listener);				}			}		}	}