summaryrefslogtreecommitdiffstats
path: root/ceee
diff options
context:
space:
mode:
authorjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-03 17:13:49 +0000
committerjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-03 17:13:49 +0000
commitd9c964d64dc835bcabbaaf1a88d0030bb2abadee (patch)
tree250d28a3c45245e9d7a64c42504dc272715dc798 /ceee
parentd7b59a0c525807f1eaf0456c3db3b4f659bcccc4 (diff)
downloadchromium_src-d9c964d64dc835bcabbaaf1a88d0030bb2abadee.zip
chromium_src-d9c964d64dc835bcabbaaf1a88d0030bb2abadee.tar.gz
chromium_src-d9c964d64dc835bcabbaaf1a88d0030bb2abadee.tar.bz2
Avoid unwind in function using __try
BUG=none TEST=none Review URL: http://codereview.chromium.org/5512008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68177 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ceee')
-rw-r--r--ceee/ie/broker/broker_rpc_client.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/ceee/ie/broker/broker_rpc_client.cc b/ceee/ie/broker/broker_rpc_client.cc
index 387f548..33e7d00 100644
--- a/ceee/ie/broker/broker_rpc_client.cc
+++ b/ceee/ie/broker/broker_rpc_client.cc
@@ -19,10 +19,16 @@
namespace {
+// Avoid using objects requiring unwind in functions that use __try.
void LogRpcException(const char* str, unsigned int exception_code) {
LOG(ERROR) << str << com::LogWe(exception_code);
}
+// Avoid using objects requiring unwind in functions that use __try.
+void RpcDcheck(const char* message) {
+ NOTREACHED() << message;
+}
+
HRESULT BindRpc(std::wstring endpoint, RPC_BINDING_HANDLE* binding_handle) {
DCHECK(binding_handle != NULL);
std::wstring protocol = kRpcProtocol;
@@ -157,7 +163,9 @@ template<class Function, class Params>
HRESULT BrokerRpcClient::RunRpc(bool allow_restart,
Function rpc_function,
const Params& params) {
- DCHECK(rpc_function);
+ if (!rpc_function) {
+ RpcDcheck("rpc_function is NULL");
+ }
if (!is_connected())
return RPC_E_FAULT;
RpcTryExcept {