summaryrefslogtreecommitdiff
path: root/ext/win32ole
diff options
context:
space:
mode:
authorsuke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-08-14 11:01:43 +0000
committersuke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-08-14 11:01:43 +0000
commit2f2cb647c1c91d76ec3f6739aaddce96560a63f5 (patch)
tree2258b2bc50385d81ab6da4e547c3efd8efe25dfd /ext/win32ole
parented485b4dda0c53cdfd2611da6ddd819a9458877b (diff)
* ext/win32ole/win32ole.c (OLE_FREE): should not call
ole_message_loop. * ext/win32ole/win32ole.c (ole_event_free): ditto. * ext/win32ole/win32ole.c (ole_initialize): stop calling OleUninitialize at exit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/win32ole')
-rw-r--r--ext/win32ole/win32ole.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/ext/win32ole/win32ole.c b/ext/win32ole/win32ole.c
index 2429663a5f..e380df8379 100644
--- a/ext/win32ole/win32ole.c
+++ b/ext/win32ole/win32ole.c
@@ -66,7 +66,6 @@
(x) = 0;\
}\
}\
- ole_msg_loop();\
CoFreeUnusedLibraries();\
}
@@ -79,7 +78,7 @@
#define WC2VSTR(x) ole_wc2vstr((x), TRUE)
-#define WIN32OLE_VERSION "0.5.4"
+#define WIN32OLE_VERSION "0.5.5"
typedef HRESULT (STDAPICALLTYPE FNCOCREATEINSTANCEEX)
(REFCLSID, IUnknown*, DWORD, COSERVERINFO*, DWORD, MULTI_QI*);
@@ -463,7 +462,6 @@ static void
ole_initialize()
{
HRESULT hr;
- int rc;
if(gOLEInitialized == Qfalse) {
hr = OleInitialize(NULL);
@@ -471,7 +469,12 @@ ole_initialize()
ole_raise(hr, rb_eRuntimeError, "Fail : OLE initialize");
}
gOLEInitialized = Qtrue;
- rc = atexit((void (*)(void))ole_uninitialize);
+ /*
+ * In some situation, OleUninitialize does not work fine. ;-<
+ */
+ /*
+ atexit((void (*)(void))ole_uninitialize);
+ */
}
}
@@ -5088,7 +5091,6 @@ ole_event_free(poleev)
pcp->lpVtbl->Unadvise(pcp, poleev->pEvent->m_dwCookie);
OLE_RELEASE(pcp);
}
- ole_msg_loop();
CoFreeUnusedLibraries();
}
}