Closed
Bug 310102
Opened 20 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•20 years ago
|
||
| Reporter | ||
Updated•20 years ago
|
Attachment #199083 -
Flags: review?(dbradley)
| Assignee | ||
Comment 2•20 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•20 years ago
|
||
And thanks again Garrett for stepping up.
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Comment 4•20 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•20 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
•