提交 abd0e1dc 编写于 作者: M Matthias Bolte

vbox: Match struct layout of the MSCOM implementation on Windows

上级 e3ce43cd
......@@ -1563,6 +1563,16 @@ struct IVirtualBox_vtbl
{
struct nsISupports_vtbl nsisupports;
# ifdef WIN32
/* The MSCOM implementation has some additional methods here.
* So add them here to get correct binary layout of the object.
* In API version 2.2 this affects IVirtualBox and ISession only. */
nsresult PR_COM_METHOD (*GetTypeInfoCount)(IVirtualBox *pThis);
nsresult PR_COM_METHOD (*GetTypeInfo)(IVirtualBox *pThis);
nsresult PR_COM_METHOD (*GetIDsOfNames)(IVirtualBox *pThis);
nsresult PR_COM_METHOD (*Invoke)(IVirtualBox *pThis);
# endif
nsresult PR_COM_METHOD (*GetVersion)(IVirtualBox *pThis, PRUnichar * *version);
nsresult PR_COM_METHOD (*GetRevision)(IVirtualBox *pThis, PRUint32 *revision);
......@@ -4567,6 +4577,16 @@ struct ISession_vtbl
{
struct nsISupports_vtbl nsisupports;
# ifdef WIN32
/* The MSCOM implementation has some additional methods here.
* So add them here to get correct binary layout of the object.
* In API version 2.2 this affects IVirtualBox and ISession only. */
nsresult PR_COM_METHOD (*GetTypeInfoCount)(ISession *pThis);
nsresult PR_COM_METHOD (*GetTypeInfo)(ISession *pThis);
nsresult PR_COM_METHOD (*GetIDsOfNames)(ISession *pThis);
nsresult PR_COM_METHOD (*Invoke)(ISession *pThis);
# endif
nsresult PR_COM_METHOD (*GetState)(ISession *pThis, PRUint32 *state);
nsresult PR_COM_METHOD (*GetType)(ISession *pThis, PRUint32 *type);
......
......@@ -716,6 +716,15 @@ struct nsISupports_vtbl {
*/
nsresult PR_COM_METHOD (*Release)(nsISupports *pThis);
# ifdef WIN32
/* The MSCOM implementation has some additional methods here.
* So add them here to get correct binary layout of the object.
* In API version 3.x this affects all types. */
nsresult PR_COM_METHOD (*GetTypeInfoCount)(nsISupports *pThis);
nsresult PR_COM_METHOD (*GetTypeInfo)(nsISupports *pThis);
nsresult PR_COM_METHOD (*GetIDsOfNames)(nsISupports *pThis);
nsresult PR_COM_METHOD (*Invoke)(nsISupports *pThis);
# endif
};
struct nsISupports {
......
......@@ -716,6 +716,15 @@ struct nsISupports_vtbl {
*/
nsresult PR_COM_METHOD (*Release)(nsISupports *pThis);
# ifdef WIN32
/* The MSCOM implementation has some additional methods here.
* So add them here to get correct binary layout of the object.
* In API version 3.x this affects all types. */
nsresult PR_COM_METHOD (*GetTypeInfoCount)(nsISupports *pThis);
nsresult PR_COM_METHOD (*GetTypeInfo)(nsISupports *pThis);
nsresult PR_COM_METHOD (*GetIDsOfNames)(nsISupports *pThis);
nsresult PR_COM_METHOD (*Invoke)(nsISupports *pThis);
# endif
};
struct nsISupports {
......
......@@ -712,6 +712,15 @@ struct nsISupports_vtbl {
*/
nsresult PR_COM_METHOD (*Release)(nsISupports *pThis);
# ifdef WIN32
/* The MSCOM implementation has some additional methods here.
* So add them here to get correct binary layout of the object.
* In API version 3.x this affects all types. */
nsresult PR_COM_METHOD (*GetTypeInfoCount)(nsISupports *pThis);
nsresult PR_COM_METHOD (*GetTypeInfo)(nsISupports *pThis);
nsresult PR_COM_METHOD (*GetIDsOfNames)(nsISupports *pThis);
nsresult PR_COM_METHOD (*Invoke)(nsISupports *pThis);
# endif
};
struct nsISupports {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册