Bug 261398 CocoaUIEnhancer NSME for standardWindowButton
Weird one. I'm not sure that I can reproduce what caused it initially as everything is fine and then I start seeing this in error log. I have it in the test IDE I just did for 261395 so perhaps you can reproduce it by following those steps. (And I just got a sementation fault as I was submitting this report..but I won't could the issue.) java.lang.NoSuchMethodException: org.eclipse.swt.internal.cocoa.NSWindow.standardWindowButton(int) at java.lang.Class.getMethod(Class.java:1605) at org.eclipse.ui.internal.cocoa.CocoaUIEnhancer.invokeMethod(CocoaUIEnhancer.java:622) at org.eclipse.ui.internal.cocoa.CocoaUIEnhancer.modifyWindowShell(CocoaUIEnhancer.java:339) at org.eclipse.ui.internal.cocoa.CocoaUIEnhancer$1.run(CocoaUIEnhancer.java:261) at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:155) at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:158) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:133) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:2909) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2679) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2384) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2348) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2200) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:495) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:333) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:490) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:366) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:550) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:505) at org.eclipse.equinox.launcher.Main.run(Main.java:1237) at org.eclipse.equinox.launcher.Main.main(Main.java:1213) Its preceeded by this: 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] Could not load library: liblocalfile_1_0_0.jnilib. This library provides platform-specific optimizations for certain file system operations. This library is not present on all platforms, so this may not be an error. The resources plug-in will safely fall back to using java.io.File functionality. 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] !STACK 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] 0 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] java.lang.UnsatisfiedLinkError: no localfile_1_0_0 in java.library.path 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1753) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at java.lang.Runtime.loadLibrary0(Runtime.java:822) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at java.lang.System.loadLibrary(System.java:993) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.filesystem.local.LocalFileNatives.<clinit>(LocalFileNatives.java:32) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.filesystem.local.LocalFile.fetchInfo(LocalFile.java:142) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.filesystem.provider.FileStore.fetchInfo(FileStore.java:277) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:733) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:797) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:777) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:663) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1325) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:1953) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:1716) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:376) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:804) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at java.security.AccessController.doPrivileged(Native Method) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:798) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:779) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:400) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:427) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:193) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:372) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:445) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:401) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:389) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:87) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at java.lang.ClassLoader.loadClass(ClassLoader.java:251) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:114) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:366) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at java.lang.reflect.Method.invoke(Method.java:585) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:550) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.equinox.launcher.Main.basicRun(Main.java:505) 1/16/09 1:56:35 PM [0x0-0x36036].org.eclipse.eclipse[370] at org.eclipse.equinox.launcher.Main.run(Main.java:1237) 1/16/09 1:56:39 PM [0x0-0x36036].org.eclipse.eclipse[370] !ENTRY org.eclipse.core.net 1 1/16/09 1:56:39 PM [0x0-0x36036].org.eclipse.eclipse[370] 0 2009-01-16 13:56:39.447
bundles/org.eclipse.ui.cocoa/src/org/eclipse/ui/internal/cocoa/CocoaUIEnhancer.java
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.text.MessageFormat;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.commands.NotEnabledException;
import org.eclipse.core.commands.NotHandledException;
import org.eclipse.core.commands.common.NotDefinedException;
import org.eclipse.core.runtime.IProduct;
import org.eclipse.core.runtime.Platform;
import org.eclipse.jface.action.ActionContributionItem;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.action.IContributionItem;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.swt.SWT;
import org.eclipse.swt.internal.C;
import org.eclipse.swt.internal.Callback;
import org.eclipse.swt.internal.cocoa.NSApplication;
import org.eclipse.swt.internal.cocoa.NSButton;
import org.eclipse.swt.internal.cocoa.NSControl;
import org.eclipse.swt.internal.cocoa.NSMenu;
import org.eclipse.swt.internal.cocoa.NSMenuItem;
import org.eclipse.swt.internal.cocoa.NSString;
import org.eclipse.swt.internal.cocoa.NSToolbar;
import org.eclipse.swt.internal.cocoa.NSWindow;
import org.eclipse.swt.internal.cocoa.OS;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;