Closed Bug 22086 Opened 25 years ago Closed 25 years ago

Recent checkins, breaks HP build...

Categories

(SeaMonkey :: General, defect, P3)

x86
Other
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: jdunn, Assigned: jband_mozilla)

References

Details

The HPUX tinderboxes are reporting the following error Error 229: "../../../../dom/src/base/nsJSWindow.cpp", line 2677 # Ambiguous overloaded function call; a function match was not found that was strictly best for ALL arguments. Two functions that matched best for some arguments (but not all) were "int operator ==(const nsIDOMEventTarget *,const nsIDOMEventTargetPtr &)" ["../../../../dom/src/base/nsJSWindow.cpp", line 79] and "bool operator ==(nsIDOMEventTarget *,nsIDOMEventTarget *)" [Built-in operator]. if (nsnull == nativeThis) { ^^^^^^^^^^^^^^^^^^^^ I talked this over with Vidur and he surmised that this will in fact break other platforms with upcoming checkins by jband that I believe will 'enable' USE_COMPTR (in dom/tools/FileGen.h).
Blocks: 18687, 18688
Vidur suggests the following patch...the COMPtr part of which is necessary for switching on USE_COMPTR. Index: JSStubGen.cpp =================================================================== RCS file: /cvsroot/mozilla/dom/tools/JSStubGen.cpp,v retrieving revision 1.58 diff -c -r1.58 JSStubGen.cpp *** JSStubGen.cpp 1999/12/17 00:26:08 1.58 --- JSStubGen.cpp 1999/12/17 23:54:02 *************** *** 1022,1028 **** " return nsJSUtils::nsReportError(cx, NS_ERROR_DOM_SECURITY_ERR);\n" " }\n" " }\n" ! "\n" " // If there's no private data, this must be the prototype, so ignore\n" " if (nsnull == nativeThis) {\n" " return JS_TRUE;\n" --- 1022,1030 ---- " return nsJSUtils::nsReportError(cx, NS_ERROR_DOM_SECURITY_ERR);\n" " }\n" " }\n" ! "\n"; ! ! static const char kMethodCheckNullStr[] = " // If there's no private data, this must be the prototype, so ignore\n" " if (nsnull == nativeThis) {\n" " return JS_TRUE;\n" *************** *** 1030,1035 **** --- 1032,1049 ---- "\n" " {\n"; + static const char kMethodCheckNullNonPrimaryStr[] = + " // If there's no private data, this must be the prototype, so ignore\n" + #ifdef USE_COMPTR + " if (!nativeThis) {\n" + #else + " if (nativeThis.IsNull()) {\n" + #endif + " return JS_TRUE;\n" + " }\n" + "\n" + " {\n"; + static const char kMethodObjectParamStr[] = #ifdef USE_COMPTR " if (JS_FALSE == nsJSUtils::nsConvertJSValToObject((nsISupports **)(void**)getter_AddRefs(b%d),\n" *************** *** 1227,1232 **** --- 1241,1252 ---- sprintf(buf, kMethodBodyBeginStr, upr_iface_name, upr_method_name); + if (i == 0) { + *file << kMethodCheckNullStr; + } + else { + *file << kMethodCheckNullNonPrimaryStr; + } *file << buf; if (pcount > 0) {
Assignee: waterson → jband
I'll check this in with my changes. Oh, and one small change - send out the buf before the new block... sprintf(buf, kMethodBodyBeginStr, upr_iface_name, upr_method_name); *file << buf; + if (i == 0) { + *file << kMethodCheckNullStr; + } + else { + *file << kMethodCheckNullNonPrimaryStr; + }
Adding Mike to cc list
Well, actually vidurs suggested reording of the output is a little cleaner since if does the null check before the security check. I'll do it that way.
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
I did my checkin. Should be fixed. I see other bustage on the HP build on the tinderbox ports page. I'm marking this fixed. Please reopen it if I'm wrong.
Status: RESOLVED → VERIFIED
I am verifying... jband's fix did it.
Obsolete DOM Viewer bugs -> Browser-General; DOM Viewer component is going away.
Component: DOM Viewer → Browser-General
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.