Update SkCoInitialize to better match spec.
http://codereview.appspot.com/5036044/
git-svn-id: http://skia.googlecode.com/svn/trunk@2274 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/utils/win/SkAutoCoInitialize.cpp b/src/utils/win/SkAutoCoInitialize.cpp
index 460606b..dd6e936 100644
--- a/src/utils/win/SkAutoCoInitialize.cpp
+++ b/src/utils/win/SkAutoCoInitialize.cpp
@@ -12,16 +12,18 @@
#include <ole2.h>
#include "SkAutoCoInitialize.h"
-AutoCoInitialize::AutoCoInitialize() :
+SkAutoCoInitialize::SkAutoCoInitialize() :
fHR(
CoInitializeEx(NULL, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE)
)
{ }
-AutoCoInitialize::~AutoCoInitialize() {
+SkAutoCoInitialize::~SkAutoCoInitialize() {
if (SUCCEEDED(this->fHR)) {
CoUninitialize();
}
}
-HRESULT AutoCoInitialize::getHR() { return this->fHR; }
+bool SkAutoCoInitialize::succeeded() {
+ return SUCCEEDED(this->fHR) || RPC_E_CHANGED_MODE == this->fHR;
+}