Closed
Bug 310102
Opened 19 years ago
Closed 19 years ago
XPCDispTearOff::Invoke() processes DISPARAMS in wrong direction
Categories
(Core :: XPConnect, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: gdavis, Assigned: dbradley)
Details
Attachments
(1 file)
|
1.37 KB,
patch
|
dbradley
:
review+
jst
:
superreview+
jst
:
approval-branch-1.8.1+
dveditz
:
approval1.8.0.2-
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7 (ax) Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7 (ax) IDispatch::Invoke() expects parameters to be ordered like the "__cdecl" calling convention and not the "__pascal" calling convention. Therefore, anyone calling an XPCDispTearOff method will pass the params ordered from right-to-left, but the Invoke() handler is processing the params from left-to-right. Reproducible: Always Steps to Reproduce: 1. Call multi-parameter method using Invoke(). 2. The JavaScript method parameters will be reversed. Actual Results: The parameters are reversed. Expected Results: The parameters should not be reversed.
| Reporter | ||
Comment 1•19 years ago
|
||
| Reporter | ||
Updated•19 years ago
|
Attachment #199083 -
Flags: review?(dbradley)
| Assignee | ||
Comment 2•19 years ago
|
||
Comment on attachment 199083 [details] [diff] [review] Diff of patch reversing the processing order of DISPPARAMS r=dbradley I was playing with this myself. Patch looks good. NOTE: this is IDispatch only code, so no risk outside of IDispatch
Attachment #199083 -
Flags: superreview?(jst)
Attachment #199083 -
Flags: review?(dbradley)
Attachment #199083 -
Flags: review+
| Assignee | ||
Comment 3•19 years ago
|
||
And thanks again Garrett for stepping up.
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Comment 4•19 years ago
|
||
Comment on attachment 199083 [details] [diff] [review] Diff of patch reversing the processing order of DISPPARAMS sr=jst
Attachment #199083 -
Flags: superreview?(jst) → superreview+
| Reporter | ||
Comment 5•19 years ago
|
||
(In reply to comment #2) > (From update of attachment 199083 [details] [diff] [review] [edit]) > r=dbradley > > I was playing with this myself. Patch looks good. NOTE: this is IDispatch only > code, so no risk outside of IDispatch > Could you land this for me please David? I'd like to get this incorporated into my builds without having to apply the patch. Thanks P.S. I would like to see about getting myself permission to assign bugs to myself and/or the ability to land patches myself.
Comment 6•19 years ago
|
||
Fix landed on the trunk. FIXED.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
| Reporter | ||
Updated•19 years ago
|
Attachment #199083 -
Flags: approval1.8.0.2?
Comment 7•19 years ago
|
||
For the record, this caused VC6 builds to fail, this change is needed in addition to landing this patch: http://bonsai.mozilla.org/cvsview2.cgi?diff_mode=context&whitespace_mode=show&subdir=mozilla/js/src/xpconnect/src&command=DIFF_FRAMESET&file=XPCDispTearOff.cpp&rev1=1.15&rev2=1.16&root=/cvsroot
Comment 8•19 years ago
|
||
Comment on attachment 199083 [details] [diff] [review] Diff of patch reversing the processing order of DISPPARAMS Maybe for 1.8 branch (Firefox 2), not 1.8.0.x
Attachment #199083 -
Flags: approval1.8.0.2?
Attachment #199083 -
Flags: approval1.8.0.2-
Attachment #199083 -
Flags: approval-branch-1.8.1?(jst)
Updated•19 years ago
|
Attachment #199083 -
Flags: approval-branch-1.8.1?(jst) → approval-branch-1.8.1+
You need to log in
before you can comment on or make changes to this bug.
Description
•