Bob: you were supposed to review+commit a fix for this a week ago. :) http://gwt-code-reviews.appspot.com/102808/show
On Thu, Nov 19, 2009 at 4:57 AM, Matt Mastracci <[email protected]>wrote: > Hey all, > > I'm in the process of upgrading our really old trunk snapshot to 2.0- > RC1 and I'm getting a NPE in JsniChecker. > > Apparently, jsniMethods.get(meth) is returning null from here: > > JsniMethod jsniMethod = jsniMethods.get(meth); > new JsniRefChecker(meth, > hasUnsafeLongsAnnotation).check(jsniMethod.function()); > > The file is one of the ones we auto-generate for XPCOM bindings. Any > ideas what might cause the compiler to choke here? I can send the jar > full of bindings if needed or trace through if needed. > > Matt. > > ========== > > /* > * DO NOT EDIT. THIS FILE IS GENERATED FROM /Users/matthew/Documents/ > dotspots/trunk/build/output/client/idl/nsIServiceManager.idl > */ > > package org.mozilla.xpconnect.gecko; > > import org.mozilla.xpconnect.*; > > /** > * The nsIServiceManager manager interface provides a means to obtain > * global services in an application. The service manager depends on > the > * repository to find and instantiate factories to obtain services. > * > * Users of the service manager must first obtain a pointer to the > global > * service manager by calling NS_GetServiceManager. After that, > * they can request specific services by calling GetService. When > they are > * finished they can NS_RELEASE() the service as usual. > * > * A user of a service may keep references to particular services > indefinitely > * and only must call Release when it shuts down. > * > * @status FROZEN > */ > public class /* NS_NO_VTABLE */ /* NS_SCRIPTABLE */ nsIServiceManager > extends nsISupports { > /** > * IID for interface nsIServiceManager. > */ > public static final String NS_ISERVICEMANAGER_IID = "8bb35ed9- > e332-462d-9155-4a002ab5c958"; > > /** > * Protected JSNI constructor. > */ > protected nsIServiceManager() { > } > > public static native nsIServiceManager createInstance(String > className) /*-{ > return > Components > .classes > [className].createInstance(Components.interfaces.nsIServiceManager); > }-*/; > > public static native nsIServiceManager getService(String > className) /*-{ > return > Components > .classes[className].getService(Components.interfaces.nsIServiceManager); > }-*/; > > public static native XPConnectIID<? extends nsIServiceManager> > iid() /*-{ > return Components.interfaces.nsIServiceManager; > }-*/; > > /** > * Callback interface for {...@link nsIServiceManager}. > */ > public interface Callback extends nsISupports.Callback { > /** > * getServiceByContractID > * > * Returns the instance that implements aClass or aContractID and > the > * interface aIID. This may result in the instance being created. > * > * @param aClass or aContractID : aClass or aContractID of object > * instance requested > * @param aIID : IID of interface requested > * @param result : resulting service > */ > /* void getService (in nsCIDRef aClass, in nsIIDRef aIID, [iid_is > (aIID), retval] out nsQIResult result); */ > public <T_aIID extends nsISupports> T_aIID > getService(com.google.gwt.core.client.JavaScriptObject aClass, > XPConnectIID<T_aIID> aIID); > > /* void getServiceByContractID (in string aContractID, in > nsIIDRef aIID, [iid_is (aIID), retval] out nsQIResult result); */ > public <T_aIID extends nsISupports> T_aIID > getServiceByContractID(String aContractID, XPConnectIID<T_aIID> aIID); > > /** > * isServiceInstantiated > * > * isServiceInstantiated will return a true if the service has > already > * been created, otherwise false > * > * @param aClass or aContractID : aClass or aContractID of object > * instance requested > * @param aIID : IID of interface requested > * @param aIID : IID of interface requested > */ > /* boolean isServiceInstantiated (in nsCIDRef aClass, in nsIIDRef > aIID); */ > public <T_aIID extends nsISupports> boolean > isServiceInstantiated(com.google.gwt.core.client.JavaScriptObject > aClass, XPConnectIID<T_aIID> aIID); > > /* boolean isServiceInstantiatedByContractID (in string > aContractID, in nsIIDRef aIID); */ > public <T_aIID extends nsISupports> boolean > isServiceInstantiatedByContractID(String aContractID, > XPConnectIID<T_aIID> aIID); > > } > > public static native nsIServiceManager wrap(Callback callback) /*-{ > var wrapped = @org.mozilla.xpconnect.gecko.nsISupports::wrap(Lorg/ > mozilla/xpconnect/gecko/nsISupports$Callback;)(callback); > wrapped.getService = function getService(aClass, aIID) { return > [email protected] > $Callback::getService(Lorg/mozilla/xpconnect/gecko/ > com.google.gwt.core.client.JavaScriptObject;Lorg/mozilla/xpconnect/ > XPConnectIID;)(aClass, aIID); } > wrapped.getServiceByContractID = function > getServiceByContractID(aContractID, aIID) { return > [email protected] > $Callback::getServiceByContractID(Ljava/lang/String;Lorg/mozilla/ > xpconnect/XPConnectIID;)(aContractID, aIID); } > wrapped.isServiceInstantiated = function > isServiceInstantiated(aClass, aIID) { return > [email protected] > $Callback::isServiceInstantiated(Lorg/mozilla/xpconnect/gecko/ > com.google.gwt.core.client.JavaScriptObject;Lorg/mozilla/xpconnect/ > XPConnectIID;)(aClass, aIID); } > wrapped.isServiceInstantiatedByContractID = function > isServiceInstantiatedByContractID(aContractID, aIID) { return > [email protected] > $Callback::isServiceInstantiatedByContractID(Ljava/lang/String;Lorg/ > mozilla/xpconnect/XPConnectIID;)(aContractID, aIID); } > return wrapped; > }-*/; > > /** > * getServiceByContractID > * > * Returns the instance that implements aClass or aContractID and > the > * interface aIID. This may result in the instance being created. > * > * @param aClass or aContractID : aClass or aContractID of object > * instance requested > * @param aIID : IID of interface requested > * @param result : resulting service > */ > /* void getService (in nsCIDRef aClass, in nsIIDRef aIID, [iid_is > (aIID), retval] out nsQIResult result); */ > public final native <T_aIID extends nsISupports> T_aIID > getService(com.google.gwt.core.client.JavaScriptObject aClass, > XPConnectIID<T_aIID> aIID) /*-{ > return this.getService(aClass, aIID); > }-*/; > > /* void getServiceByContractID (in string aContractID, in nsIIDRef > aIID, [iid_is (aIID), retval] out nsQIResult result); */ > public final native <T_aIID extends nsISupports> T_aIID > getServiceByContractID(String aContractID, XPConnectIID<T_aIID> aIID) / > *-{ > return this.getServiceByContractID(aContractID, aIID); > }-*/; > > /** > * isServiceInstantiated > * > * isServiceInstantiated will return a true if the service has > already > * been created, otherwise false > * > * @param aClass or aContractID : aClass or aContractID of object > * instance requested > * @param aIID : IID of interface requested > * @param aIID : IID of interface requested > */ > /* boolean isServiceInstantiated (in nsCIDRef aClass, in nsIIDRef > aIID); */ > public final native <T_aIID extends nsISupports> boolean > isServiceInstantiated(com.google.gwt.core.client.JavaScriptObject > aClass, XPConnectIID<T_aIID> aIID) /*-{ > return this.isServiceInstantiated(aClass, aIID); > }-*/; > > /* boolean isServiceInstantiatedByContractID (in string > aContractID, in nsIIDRef aIID); */ > public final native <T_aIID extends nsISupports> boolean > isServiceInstantiatedByContractID(String aContractID, > XPConnectIID<T_aIID> aIID) /*-{ > return this.isServiceInstantiatedByContractID(aContractID, aIID); > }-*/; > > } > /* End of class */ > > -- > http://groups.google.com/group/Google-Web-Toolkit-Contributors > -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
