THRIFT-415. rb: BinaryProtocolAccelerated does not behave properly when strict reads are turned off

This patch adds the appropriate test for the behavior and fixes the thrift_native project to do the right thing. 



git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@760735 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/rb/spec/binaryprotocol_spec_shared.rb b/lib/rb/spec/binaryprotocol_spec_shared.rb
index a8a6e90..90371b3 100644
--- a/lib/rb/spec/binaryprotocol_spec_shared.rb
+++ b/lib/rb/spec/binaryprotocol_spec_shared.rb
@@ -208,6 +208,12 @@
     @prot.read_message_begin().should == ['testMessage', Thrift::MessageTypes::CALL, 17]
   end
   
+  it "should read the message header without version when writes are not strict" do
+    @prot = protocol_class.new(@trans, false, true) # no strict write
+    @trans.write("\000\000\000\vtestMessage\001\000\000\000\021")
+    @prot.read_message_begin().should == ['testMessage', Thrift::MessageTypes::CALL, 17]
+  end
+
   # message footer is a noop
   
   it "should read a field header" do