Closed Bug 310102 Opened 20 years ago Closed 19 years ago

XPCDispTearOff::Invoke() processes DISPARAMS in wrong direction

Categories

(Core :: XPConnect, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: gdavis, Assigned: dbradley)

Details

Attachments

(1 file)

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.
Attachment #199083 - Flags: review?(dbradley)
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+
And thanks again Garrett for stepping up.
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Comment on attachment 199083 [details] [diff] [review] Diff of patch reversing the processing order of DISPPARAMS sr=jst
Attachment #199083 - Flags: superreview?(jst) → superreview+
(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.
Fix landed on the trunk. FIXED.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Attachment #199083 - Flags: approval1.8.0.2?
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)
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.

Attachment

General

Creator:
Created:
Updated:
Size: