diff --git a/lib/erl/src/thrift_binary_protocol.erl b/lib/erl/src/thrift_binary_protocol.erl
index 800fd8e..85abb62 100644
--- a/lib/erl/src/thrift_binary_protocol.erl
+++ b/lib/erl/src/thrift_binary_protocol.erl
@@ -333,11 +333,15 @@
 new_protocol_factory(TransportFactory, Options) ->
     ParsedOpts = parse_factory_options(Options, #tbp_opts{}),
     F = fun() ->
-                {ok, Transport} = TransportFactory(),
-                thrift_binary_protocol:new(
-                  Transport,
-                  [{strict_read,  ParsedOpts#tbp_opts.strict_read},
-                   {strict_write, ParsedOpts#tbp_opts.strict_write}])
+               case TransportFactory() of
+                    {ok, Transport} ->
+                        thrift_binary_protocol:new(
+                            Transport,
+                            [{strict_read,  ParsedOpts#tbp_opts.strict_read},
+                             {strict_write, ParsedOpts#tbp_opts.strict_write}]);
+                    {error, Error} ->
+                        {error, Error}
+                end
         end,
     {ok, F}.
 
diff --git a/lib/erl/src/thrift_client.erl b/lib/erl/src/thrift_client.erl
index 5c74adc..c91c3ea 100644
--- a/lib/erl/src/thrift_client.erl
+++ b/lib/erl/src/thrift_client.erl
@@ -96,17 +96,20 @@
                               seqid    = SeqId},
             Function,
             ReplyType) ->
-    {Proto1, MessageBegin} = thrift_protocol:read(Proto0, message_begin),
-    NewClient = Client#tclient{protocol = Proto1},
-    case MessageBegin of
-        #protocol_message_begin{seqid = RetSeqId} when RetSeqId =/= SeqId ->
-            {NewClient, {error, {bad_seq_id, SeqId}}};
-
-        #protocol_message_begin{type = ?tMessageType_EXCEPTION} ->
-            handle_application_exception(NewClient);
-
-        #protocol_message_begin{type = ?tMessageType_REPLY} ->
-            handle_reply(NewClient, Function, ReplyType)
+    case thrift_protocol:read(Proto0, message_begin) of
+         {Proto1, {error, Reason}} ->
+             NewClient = Client#tclient{protocol = Proto1},
+             {NewClient, {error, Reason}};
+         {Proto1, MessageBegin} ->
+             NewClient = Client#tclient{protocol = Proto1},
+             case MessageBegin of
+                 #protocol_message_begin{seqid = RetSeqId} when RetSeqId =/= SeqId ->
+                     {NewClient, {error, {bad_seq_id, SeqId}}};
+                 #protocol_message_begin{type = ?tMessageType_EXCEPTION} ->
+                     handle_application_exception(NewClient);
+                 #protocol_message_begin{type = ?tMessageType_REPLY} ->
+                     handle_reply(NewClient, Function, ReplyType)
+             end
     end.
 
 
diff --git a/lib/erl/src/thrift_client_util.erl b/lib/erl/src/thrift_client_util.erl
index c52bb8b..02368bf 100644
--- a/lib/erl/src/thrift_client_util.erl
+++ b/lib/erl/src/thrift_client_util.erl
@@ -56,6 +56,9 @@
     {ok, ProtocolFactory} = thrift_binary_protocol:new_protocol_factory(
                               TransportFactory, ProtoOpts),
 
-    {ok, Protocol} = ProtocolFactory(),
-
-    thrift_client:new(Protocol, Service).
+    case ProtocolFactory() of
+        {ok, Protocol} ->
+            thrift_client:new(Protocol, Service);
+        {error, Error} ->
+            {error, Error}
+    end.
