From: [EMAIL PROTECTED]
Operating system: 2000
PHP version: 4.1.1
PHP Bug Type: COM related
Bug description: COM Singleton
I noticed that loading a COM object that has been declared as a singleton
locks up the browser. I created a simple COM object (header follows), and
if I add the SINGLETON macro to the com object, it will hang on
instantiation. If anybody has a solution, or a work around, I would
greatly appreciate it. It looks as though only simple apartment level COM
objects are acceptable. Thank you. Tom Lee
class ATL_NO_VTABLE CIt :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CIt, &CLSID_It>,
public IDispatchImpl<IIt, &IID_IIt, &LIBID_TESTLib>
{
public:
CIt()
{
}
DECLARE_REGISTRY_RESOURCEID(IDR_IT)
// Below macro will destroy the object
DECLARE_CLASSFACTORY_SINGLETON(CIt) // <<<< This it it!!!
DECLARE_PROTECT_FINAL_CONSTRUCT()
BEGIN_COM_MAP(CIt)
COM_INTERFACE_ENTRY(IIt)
COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()
// IIt
public:
STDMETHOD(Now)();
protected:
};
--
Edit bug report at http://bugs.php.net/?id=15635&edit=1
--
Fixed in CVS: http://bugs.php.net/fix.php?id=15635&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=15635&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=15635&r=needtrace
Try newer version: http://bugs.php.net/fix.php?id=15635&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=15635&r=support
Expected behavior: http://bugs.php.net/fix.php?id=15635&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=15635&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=15635&r=submittedtwice