@@ -1112,29 +1112,25 @@ std::vector<int8_t> TcrConnection::readHandshakeData(
1112
1112
if (msgLength < 0 ) {
1113
1113
msgLength = 0 ;
1114
1114
}
1115
- char * recvMessage;
1116
- _GEODE_NEW (recvMessage, char [msgLength + 1 ]);
1117
- recvMessage[msgLength] = ' \0 ' ;
1115
+ std::vector<int8_t > message (msgLength + 1 );
1116
+ message.data ()[msgLength] = ' \0 ' ;
1118
1117
if (msgLength == 0 ) {
1119
- return std::vector< int8_t >(recvMessage, recvMessage + 1 ) ;
1118
+ return message ;
1120
1119
}
1121
- if ((error = receiveData (recvMessage, msgLength, connectTimeout, false )) !=
1122
- CONN_NOERR) {
1120
+ if ((error = receiveData (reinterpret_cast <char *>(message.data ()), msgLength,
1121
+ connectTimeout, false )) != CONN_NOERR) {
1122
+ GF_SAFE_DELETE_CON (m_conn);
1123
1123
if (error & CONN_TIMEOUT) {
1124
- _GEODE_SAFE_DELETE_ARRAY (recvMessage);
1125
- GF_SAFE_DELETE_CON (m_conn);
1126
1124
throwException (
1127
1125
TimeoutException (" TcrConnection::TcrConnection: "
1128
1126
" Timeout in handshake" ));
1129
1127
} else {
1130
- _GEODE_SAFE_DELETE_ARRAY (recvMessage);
1131
- GF_SAFE_DELETE_CON (m_conn);
1132
1128
throwException (
1133
1129
GeodeIOException (" TcrConnection::TcrConnection: "
1134
1130
" Handshake failure" ));
1135
1131
}
1136
1132
} else {
1137
- return std::vector< int8_t >(recvMessage, recvMessage + msgLength + 1 ) ;
1133
+ return message ;
1138
1134
}
1139
1135
}
1140
1136
@@ -1147,26 +1143,21 @@ std::shared_ptr<CacheableBytes> TcrConnection::readHandshakeRawData(
1147
1143
if (msgLength == 0 ) {
1148
1144
return nullptr ;
1149
1145
}
1150
- char * recvMessage ;
1151
- _GEODE_NEW (recvMessage, char [msgLength]);
1152
- if ((error = receiveData (recvMessage, msgLength, connectTimeout, false )) !=
1153
- CONN_NOERR) {
1146
+ std::vector< int8_t > message (msgLength) ;
1147
+ if ((error = receiveData ( reinterpret_cast < char *>(message. data ()), msgLength,
1148
+ connectTimeout, false )) != CONN_NOERR) {
1149
+ GF_SAFE_DELETE_CON (m_conn);
1154
1150
if (error & CONN_TIMEOUT) {
1155
- _GEODE_SAFE_DELETE_ARRAY (recvMessage);
1156
- GF_SAFE_DELETE_CON (m_conn);
1157
1151
throwException (
1158
1152
TimeoutException (" TcrConnection::TcrConnection: "
1159
1153
" Timeout in handshake" ));
1160
1154
} else {
1161
- _GEODE_SAFE_DELETE_ARRAY (recvMessage);
1162
- GF_SAFE_DELETE_CON (m_conn);
1163
1155
throwException (
1164
1156
GeodeIOException (" TcrConnection::TcrConnection: "
1165
1157
" Handshake failure" ));
1166
1158
}
1167
1159
} else {
1168
- return CacheableBytes::create (
1169
- std::vector<int8_t >(recvMessage, recvMessage + msgLength));
1160
+ return CacheableBytes::create (std::move (message));
1170
1161
}
1171
1162
}
1172
1163
0 commit comments