Closed Bug 364731 Opened 18 years ago Closed 18 years ago

Windows x64 porting of bug 349002 - Refactor xptcall into a frozen API

Categories

(Core :: XPCOM, defect)

x86
Windows Server 2003
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: m_kato, Unassigned)

Details

Attachments

(1 file, 1 obsolete file)

User-Agent:       Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; WOW64; SV1; .NET CLR 2.0.50727)
Build Identifier: 

Due to a fix of bug 349002, some API is changed.  But since Windows x64 code isn't updated, it will be build break.

Reproducible: Always
Attached patch a patch for Windows x64 (obsolete) — Splinter Review
Comment on attachment 249449 [details] [diff] [review]
a patch for Windows x64

>Index: win32/xptcinvoke_x86_64.cpp

>-extern "C"
>-XPTC_PUBLIC_API(nsresult)
>-XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex,
>+extern "C" NS_EXPORT
>+nsresult NS_FROZENCALL

Is there any particular reason you're not using XPCOM_API like the header does? http://lxr.mozilla.org/mozilla/source/xpcom/reflect/xptcall/public/xptcall.h#187

The rest of this looks fine.

--BDS
Status: UNCONFIRMED → NEW
Ever confirmed: true
Attachment #249449 - Flags: review?(timeless)
(In reply to comment #2)
> (From update of attachment 249449 [details] [diff] [review] [edit])
> >Index: win32/xptcinvoke_x86_64.cpp
> >-extern "C"
> >-XPTC_PUBLIC_API(nsresult)
> >-XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex,
> >+extern "C" NS_EXPORT
> >+nsresult NS_FROZENCALL
> Is there any particular reason you're not using XPCOM_API like the header does?
> http://lxr.mozilla.org/mozilla/source/xpcom/reflect/xptcall/public/xptcall.h#187
> The rest of this looks fine.
> --BDS

It is same style of win32 code (xptcinvole.cpp).  If I have to use XPCOM_API like the header, I fix a patch.

If I have to use it, why doesn't win32 code use XPCOM_API like header?
> It is same style of win32 code (xptcinvole.cpp).  If I have to use XPCOM_API
> like the header, I fix a patch.

Yes, please submit a new patch.

> If I have to use it, why doesn't win32 code use XPCOM_API like header?

Because it requires the __declspec(naked) attribute.
(In reply to comment #4)
> > It is same style of win32 code (xptcinvole.cpp).  If I have to use XPCOM_API
> > like the header, I fix a patch.
> 
> Yes, please submit a new patch.
> 
> > If I have to use it, why doesn't win32 code use XPCOM_API like header?
> 
> Because it requires the __declspec(naked) attribute.
> 

OK.  I will submit new patch
Attachment #249449 - Attachment is obsolete: true
Attachment #249449 - Flags: review?(timeless)
Attachment #249490 - Flags: review?(benjamin)
Attachment #249490 - Flags: review?(benjamin) → review+
Whiteboard: [checkin needed]
Attachment #249490 - Flags: superreview?(dougt)
Comment on attachment 249490 [details] [diff] [review]
a patch for Windows x64

looks fine.
Attachment #249490 - Flags: superreview?(dougt) → superreview+
checked in
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Whiteboard: [checkin needed]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: