fix string truncation issue (#545)

* fix string truncation issue
Co-authored-by: Li Zhanhui <lizhanhui@apache.org>
diff --git a/.travis.yml b/.travis.yml
index 99f27b5..84a339c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -17,7 +17,7 @@
 
 before_install:
   - cd ${TRAVIS_HOME}
-  - wget https://opensource-rocketmq-client-us.oss-us-west-1.aliyuncs.com/cpp-client/linux/1.2.4/RHEL7.x/librocketmq.tar.gz
+  - wget https://opensource-rocketmq-client-us.oss-us-west-1.aliyuncs.com/cpp-client/linux/1.2.5/RHEL7.x/librocketmq.tar.gz
   - tar -xzf librocketmq.tar.gz
   - sudo cp librocketmq.so librocketmq.a /usr/local/lib/
   - sudo cp -r rocketmq /usr/local/include/
@@ -26,4 +26,6 @@
 script:
   - export LD_LIBRARY_PATH=/usr/local/lib
   - cd ${GOPATH}/src/github.com/apache/rocketmq-client-go
+  - go get github.com/sirupsen/logrus
+  - go get github.com/stretchr/testify/assert
   - go test ./core
diff --git a/core/message.go b/core/message.go
index f6f4637..29ef2ec 100644
--- a/core/message.go
+++ b/core/message.go
@@ -64,7 +64,7 @@
 	C.free(unsafe.Pointer(cs))
 
 	cs = C.CString(gomsg.Body)
-	C.SetMessageBody(cmsg, cs)
+	C.SetByteMessageBody(cmsg, cs, C.int(len(gomsg.Body)))
 	C.free(unsafe.Pointer(cs))
 
 	C.SetDelayTimeLevel(cmsg, C.int(gomsg.DelayTimeLevel))
@@ -85,7 +85,7 @@
 	gomsg.Topic = C.GoString(C.GetOriginMessageTopic(cMsg))
 	gomsg.Tags = C.GoString(C.GetOriginMessageTags(cMsg))
 	gomsg.Keys = C.GoString(C.GetOriginMessageKeys(cMsg))
-	gomsg.Body = C.GoString(C.GetOriginMessageBody(cMsg))
+	gomsg.Body = C.GoStringN(C.GetOriginMessageBody(cMsg), C.GetOriginMessageBodyLength(cMsg))
 	gomsg.DelayTimeLevel = int(C.GetOriginDelayTimeLevel(cMsg))
 	gomsg.cmsg = cMsg
 
@@ -129,7 +129,7 @@
 	gomsg.Topic = C.GoString(C.GetMessageTopic(cmsg))
 	gomsg.Tags = C.GoString(C.GetMessageTags(cmsg))
 	gomsg.Keys = C.GoString(C.GetMessageKeys(cmsg))
-	gomsg.Body = C.GoString(C.GetMessageBody(cmsg))
+	gomsg.Body = C.GoStringN(C.GetMessageBody(cmsg), C.GetMessageBodyLength(cmsg))
 	gomsg.MessageID = C.GoString(C.GetMessageId(cmsg))
 	gomsg.DelayTimeLevel = int(C.GetMessageDelayTimeLevel(cmsg))
 	gomsg.QueueId = int(C.GetMessageQueueId(cmsg))