Closed
Bug 97667
Opened 23 years ago
Closed 23 years ago
nsIInterfaceRequestor.idl needs freezing
Categories
(Core :: XPCOM, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: jud, Assigned: jud)
References
Details
Attachments
(5 files, 1 obsolete file)
84.92 KB,
patch
|
Details | Diff | Splinter Review | |
2.08 KB,
text/plain
|
Details | |
86.73 KB,
patch
|
jud
:
review+
jud
:
superreview+
|
Details | Diff | Splinter Review |
3.71 KB,
patch
|
dbaron
:
review+
dougt
:
superreview+
|
Details | Diff | Splinter Review |
3.70 KB,
patch
|
jud
:
review+
jud
:
superreview+
|
Details | Diff | Splinter Review |
components using XPCOM interract w/ interfaces that use nsIInterfaceRequestor. This interface needs freezing. Currently the .idl wedges in nsCOMPtr which we haven't frozen yet, but will obviously need to.
Assignee | ||
Comment 1•23 years ago
|
||
seeking review from dougt, and sr from scc. be aware, if this goes in and nsIInterfaceRequestor needs to change, we're onto nsIInterfaceRequestor2 Index: nsIInterfaceRequestor.idl =================================================================== RCS file: /cvsroot/mozilla/xpcom/base/nsIInterfaceRequestor.idl,v retrieving revision 1.5 diff -u -r1.5 nsIInterfaceRequestor.idl --- nsIInterfaceRequestor.idl 1999/11/29 20:40:38 1.5 +++ nsIInterfaceRequestor.idl 2001/08/30 21:25:56 @@ -32,6 +32,8 @@ * you must be able to QI on B to get back to A. This interface however * allows you to obtain an interface C from A that may or most likely will not * have the ability to get back to A. + * + * @status FROZEN */ [scriptable, uuid(033A1470-8B2A-11d3-AF88-00A024FFC08C)]
Keywords: patch
Comment 2•23 years ago
|
||
Does this apply to the exported helper function: do_GetInterface( nsISupports* aSource, nsresult* error = 0 ) and related nsGetInterface class.? How do we deal with its base class nsCOMPtr_helper?
Assignee | ||
Comment 3•23 years ago
|
||
technically it does not, but that would suggest those be removed from this file and into another; do we want to move things around, or call those frozen too?
Comment 4•23 years ago
|
||
can't really call them froze if the nsCOMPtr_helper isn't, right?
Assignee | ||
Comment 5•23 years ago
|
||
right, we'd have to drag that in too. we can either - say that "FROZEN" applies *only* to the interface (this would go against current standard convention). - say it applies to everything in the file (current convention). If the latter, we need to drag in the nest and FREEZE it all which is generally a long, nasty process. I'm asking if we should do that here. - do_GetInterface() - easy enough to freeze IMO - nsGetInterface - I think this recently snuck in and am bumbed about it. do we want to freeze it (and it's parent class), or move it into another file? - nsCOMPtr - we're going to freeze it eventually, is this the impetus for that?
Comment 6•23 years ago
|
||
scott, how close is nsCOMPtr to being api frozen?
Assignee | ||
Comment 7•23 years ago
|
||
new tree-wide patch forthcoming, I ran w/ a direction dbaron raised. Namely, drawing out the stuff we're not necessarily settled on, out into nsIInterfaceRequestorUtils.h.
Assignee | ||
Comment 8•23 years ago
|
||
Assignee | ||
Comment 9•23 years ago
|
||
Assignee | ||
Comment 10•23 years ago
|
||
what do you guys think?
Seems fine to me, except you have some extraneous makefile changes in netwerk/core/public (I don't even have that directory) and both headers are included twice in nsDirectoryViewer.cpp.
s/have/remember having/ of course I do have it...
Assignee | ||
Comment 13•23 years ago
|
||
hmm. the makefile mods are for something else, and will be checked in independently. I'm removing dead wood in there, separate bug, removed from tree. thanks for catching the double include... removed. new patch forthcoming.
Assignee | ||
Comment 14•23 years ago
|
||
Assignee | ||
Comment 15•23 years ago
|
||
there are a few #includes in the commercial tree which will be addressed as well for the checkin.
Comment on attachment 47972 [details] [diff] [review] seeking r=dbaron, and sr=dougt. new .h will be added to xpcom mac prj for export as part of the checkin. r=dbaron if you add to the EXPORTS line in Makefile.in as well :-)
Attachment #47972 -
Flags: review+
Comment 17•23 years ago
|
||
looks good to me. Maybe you should just include nsIInterfaceRequestorUtils.h?
Comment 18•23 years ago
|
||
Comment on attachment 47972 [details] [diff] [review] seeking r=dbaron, and sr=dougt. new .h will be added to xpcom mac prj for export as part of the checkin. sr=me. Maybe you should just include "nsIInterfaceRequestorUtils.h" instead of both headers?
Attachment #47972 -
Flags: superreview+
Assignee | ||
Comment 19•23 years ago
|
||
Assignee | ||
Updated•23 years ago
|
Attachment #47972 -
Attachment is obsolete: true
Assignee | ||
Comment 20•23 years ago
|
||
Comment on attachment 48183 [details] [diff] [review] tree-wide added new .h to the EXPORTS macro. carrying over r=dbaron, and sr=dougt from previous patch.
Attachment #48183 -
Flags: superreview+
Attachment #48183 -
Flags: review+
Assignee | ||
Comment 21•23 years ago
|
||
doug and I chatted off-line re: the header separation/combination. we're sticking w/ what I have here... explicity separation between interface and utils (#include both).
Assignee | ||
Comment 22•23 years ago
|
||
Comment 23•23 years ago
|
||
Comment on attachment 48221 [details] [diff] [review] new patch for nsIInterfaceRequestor.idl. comments have been updated. seeking r=dbaron, sr=dougt has sr if r=dbaron
Attachment #48221 -
Flags: superreview+
Comment on attachment 48221 [details] [diff] [review] new patch for nsIInterfaceRequestor.idl. comments have been updated. seeking r=dbaron, sr=dougt There are tabs on these two lines: >+ /** >+ * Retrieves the specified interface pointer. >+ * @param result [out] The interface pointer to be filled out if >+ * the interface is accessible. Perhaps "filled in" is preferable to "filled out"? >+ * @return NS_OK - interface was successfully returned. >+ * NS_NOINTERFACE - interface wasn't accessible. >+ * NS_ERROR_FAILURE - method failure. Do you really want to limit the return values like this? I could imagine returning NS_ERROR_OUT_OF_MEMORY, or perhaps any other error propagated from a failure of an |Init| method. And perhaps the description of NS_NOINTERFACE should be "interface not accessible", since I would think NS_NOINTERFACE should mean that the object does not, in general, support |getInterface| to that interface. >+ * @status FROZEN Should there also be some indication that the interface is frozen? (I don't know the conventions, and you do, but it just seems odd.) r=dbaron (although if scc is around, it might be good to ping him as well)
Attachment #48221 -
Flags: review+
Assignee | ||
Comment 25•23 years ago
|
||
Assignee | ||
Comment 26•23 years ago
|
||
I've addressed dbaron's concerns: - tabs removed. - @status FROZEN moved from the method to the interface comments above it. - "filled in" instead of "filled out" - weazeled out of the confining ERROR return vals by saying it can return NS_ERROR*
Blocks: 98278
Assignee | ||
Comment 27•23 years ago
|
||
Comment on attachment 48300 [details] [diff] [review] latest nsIInterfaceRequestor.idl mods. taking dbaron's suggestions/fixes. carrying over r/sr
Attachment #48300 -
Flags: superreview+
Attachment #48300 -
Flags: review+
Assignee | ||
Comment 28•23 years ago
|
||
checked in.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•