Bug 49033 Select-All / Copy in Problems View => Spinning Pizza (seems to be infinite)
Eclipse 3.0M5 (eclipse-SDK-3-1.0M5-macosx-carbon.tar) java -version java version "1.4.1_01" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_01-99) Java HotSpot(TM) Client VM (build 1.4.1_01-27, mixed mode) do this: 1) create a project with lots of error messages (for instance, remove JDK from the build path) 2) switch to "Problems" view 3) select all (cmd-A) 4) copy (Edit->copy or cmd-C) expected result: copy contents result: Eclipse seems to freeze. Have to force-quit. CPU utilization is at around 80%. spinning pizza ball for a long time. i force-quit after about 2 - 3 minutes. (PowerBook 667 w/ 512M RAM, e.g. not an unreasonably slow system, running Panther) So either copy is extremely inefficient in this view, or there is some bug. i suspect the latter. i had about 1400 errors in the problems pane at the time (filtered out warnings). the windows version did not have any problem with this.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ActionCopyMarker.java
package org.eclipse.ui.views.markers.internal;
import java.util.List;
import org.eclipse.core.resources.IMarker;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jface.dialogs.ErrorDialog;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ISelectionProvider;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.swt.SWTError;
import org.eclipse.swt.dnd.Clipboard;
import org.eclipse.swt.dnd.DND;
import org.eclipse.swt.dnd.TextTransfer;
import org.eclipse.swt.dnd.Transfer;
import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.actions.SelectionProviderAction;
import org.eclipse.ui.part.MarkerTransfer;
/**
 * Copies one or more marker to the clipboard.
 */
public class ActionCopyMarker extends SelectionProviderAction {
	
	private IWorkbenchPart part;
	private Clipboard clipboard;
	private IField[] properties;
	/**
	 * Creates the action.
	 */
	public ActionCopyMarker(IWorkbenchPart part, ISelectionProvider provider) {