SizeTest05.cpp revision 677833bc953b6cb418c701facbdcf4aa18d6c44e
0N/A// Test05.cpp
3909N/A
0N/A#include "nsIDOMNode.h"
0N/A#include "nsCOMPtr.h"
0N/A
0N/A#ifdef __MWERKS__
2362N/A #pragma exceptions off
0N/A#endif
2362N/A
0N/ANS_DEF_PTR(nsIDOMNode);
0N/A
0N/A /*
0N/A Windows:
0N/A raw, nsCOMPtr 21 bytes
0N/A
0N/A Macintosh:
0N/A Raw, nsCOMPtr 64 bytes
0N/A */
0N/A
0N/Aclass Test05_Raw
2362N/A {
2362N/A public:
2362N/A Test05_Raw();
0N/A ~Test05_Raw();
0N/A
0N/A void /*nsresult*/ GetNode( nsIDOMNode** aNode );
0N/A
0N/A private:
0N/A nsIDOMNode* mNode;
0N/A };
0N/A
0N/ATest05_Raw::Test05_Raw()
0N/A : mNode(0)
0N/A {
0N/A // nothing else to do here
0N/A }
0N/A
0N/ATest05_Raw::~Test05_Raw()
0N/A {
0N/A NS_IF_RELEASE(mNode);
0N/A }
0N/A
0N/Avoid // nsresult
0N/ATest05_Raw::GetNode( nsIDOMNode** aNode )
0N/A // m64, w21
0N/A {
0N/A// if ( !aNode )
0N/A// return NS_ERROR_NULL_POINTER;
0N/A
0N/A *aNode = mNode;
0N/A NS_IF_ADDREF(*aNode);
0N/A
0N/A// return NS_OK;
0N/A }
0N/A
0N/A
0N/A
0N/Aclass Test05_nsCOMPtr
0N/A {
0N/A public:
0N/A void /*nsresult*/ GetNode( nsIDOMNode** aNode );
0N/A
0N/A private:
nsCOMPtr<nsIDOMNode> mNode;
};
void // nsresult
Test05_nsCOMPtr::GetNode( nsIDOMNode** aNode )
// m64, w21
{
// if ( !aNode )
// return NS_ERROR_NULL_POINTER;
*aNode = mNode;
NS_IF_ADDREF(*aNode);
// return NS_OK;
}