Skip to content

Commit 93d2099

Browse files
authored
Merge pull request #2320 from BioDataAnalysis/THRIFT-5237
THRIFT-5344 follow-up fix to THRIFT 5237 Implement MAX_MESSAGE_SIZE and consolidate limits ...
2 parents 0f21e39 + 1f73455 commit 93d2099

File tree

2 files changed

+21
-21
lines changed

2 files changed

+21
-21
lines changed

lib/cpp/src/thrift/transport/TTransport.h

+3-3
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ class TTransport {
275275
void checkReadBytesAvailable(long int numBytes)
276276
{
277277
if (remainingMessageSize_ < numBytes)
278-
throw new TTransportException(TTransportException::END_OF_FILE, "MaxMessageSize reached");
278+
throw TTransportException(TTransportException::END_OF_FILE, "MaxMessageSize reached");
279279
}
280280

281281
protected:
@@ -306,7 +306,7 @@ class TTransport {
306306

307307
// update only: message size can shrink, but not grow
308308
if (newSize > knownMessageSize_)
309-
throw new TTransportException(TTransportException::END_OF_FILE, "MaxMessageSize reached");
309+
throw TTransportException(TTransportException::END_OF_FILE, "MaxMessageSize reached");
310310

311311
knownMessageSize_ = newSize;
312312
remainingMessageSize_ = newSize;
@@ -326,7 +326,7 @@ class TTransport {
326326
else
327327
{
328328
remainingMessageSize_ = 0;
329-
throw new TTransportException(TTransportException::END_OF_FILE, "MaxMessageSize reached");
329+
throw TTransportException(TTransportException::END_OF_FILE, "MaxMessageSize reached");
330330
}
331331
}
332332
};

lib/cpp/test/ThrifttReadCheckTests.cpp

+18-18
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ BOOST_AUTO_TEST_CASE(test_tmemorybuffer_read_check_exception) {
7272

7373
TMemoryBuffer trans_in(config);
7474
memset(buffer, 0, sizeof(buffer));
75-
BOOST_CHECK_THROW(trans_in.read(buffer, sizeof(buffer)), TTransportException*);
75+
BOOST_CHECK_THROW(trans_in.read(buffer, sizeof(buffer)), TTransportException);
7676
trans_in.close();
7777
}
7878

@@ -85,13 +85,13 @@ BOOST_AUTO_TEST_CASE(test_tpipedtransport_read_check_exception) {
8585
uint8_t buffer[4];
8686

8787
underlying->write((uint8_t*)"abcd", 4);
88-
BOOST_CHECK_THROW(trans->read(buffer, sizeof(buffer)), TTransportException*);
89-
BOOST_CHECK_THROW(trans->readAll(buffer, sizeof(buffer)), TTransportException*);
88+
BOOST_CHECK_THROW(trans->read(buffer, sizeof(buffer)), TTransportException);
89+
BOOST_CHECK_THROW(trans->readAll(buffer, sizeof(buffer)), TTransportException);
9090
trans->readEnd();
9191
pipe->resetBuffer();
9292
underlying->write((uint8_t*)"ef", 2);
93-
BOOST_CHECK_THROW(trans->read(buffer, sizeof(buffer)), TTransportException*);
94-
BOOST_CHECK_THROW(trans->readAll(buffer, sizeof(buffer)), TTransportException*);
93+
BOOST_CHECK_THROW(trans->read(buffer, sizeof(buffer)), TTransportException);
94+
BOOST_CHECK_THROW(trans->readAll(buffer, sizeof(buffer)), TTransportException);
9595
trans->readEnd();
9696
}
9797

@@ -104,7 +104,7 @@ BOOST_AUTO_TEST_CASE(test_tsimplefiletransport_read_check_exception) {
104104

105105
TSimpleFileTransport trans_in("data",true, false, config);
106106
memset(buffer, 0, sizeof(buffer));
107-
BOOST_CHECK_THROW(trans_in.read(buffer, sizeof(buffer)), TTransportException*);
107+
BOOST_CHECK_THROW(trans_in.read(buffer, sizeof(buffer)), TTransportException);
108108
trans_in.close();
109109

110110
remove("./data");
@@ -118,7 +118,7 @@ BOOST_AUTO_TEST_CASE(test_tfiletransport_read_check_exception) {
118118

119119
TFileTransport trans_in("data", false, config);
120120
memset(buffer, 0, sizeof(buffer));
121-
BOOST_CHECK_THROW(trans_in.read(buffer, sizeof(buffer)), TTransportException*);
121+
BOOST_CHECK_THROW(trans_in.read(buffer, sizeof(buffer)), TTransportException);
122122

123123
remove("./data");
124124
}
@@ -130,7 +130,7 @@ BOOST_AUTO_TEST_CASE(test_tbufferedtransport_read_check_exception) {
130130
std::shared_ptr<TBufferedTransport> trans (new TBufferedTransport(buffer, config));
131131

132132
trans->write((const uint8_t*)arr, sizeof(arr));
133-
BOOST_CHECK_THROW(trans->read(arr, sizeof(arr)), TTransportException*);
133+
BOOST_CHECK_THROW(trans->read(arr, sizeof(arr)), TTransportException);
134134
}
135135

136136
BOOST_AUTO_TEST_CASE(test_tframedtransport_read_check_exception) {
@@ -140,7 +140,7 @@ BOOST_AUTO_TEST_CASE(test_tframedtransport_read_check_exception) {
140140
std::shared_ptr<TFramedTransport> trans (new TFramedTransport(buffer, config));
141141

142142
trans->write((const uint8_t*)arr, sizeof(arr));
143-
BOOST_CHECK_THROW(trans->read(arr, sizeof(arr)), TTransportException*);
143+
BOOST_CHECK_THROW(trans->read(arr, sizeof(arr)), TTransportException);
144144
}
145145

146146
BOOST_AUTO_TEST_CASE(test_tthriftbinaryprotocol_read_check_exception) {
@@ -154,19 +154,19 @@ BOOST_AUTO_TEST_CASE(test_tthriftbinaryprotocol_read_check_exception) {
154154
TList list(T_I32, 8);
155155
protocol->writeListBegin(list.elemType_, list.size_);
156156
protocol->writeListEnd();
157-
BOOST_CHECK_THROW(protocol->readListBegin(elemType, val), TTransportException*);
157+
BOOST_CHECK_THROW(protocol->readListBegin(elemType, val), TTransportException);
158158
protocol->readListEnd();
159159

160160
TSet set(T_I32, 8);
161161
protocol->writeSetBegin(set.elemType_, set.size_);
162162
protocol->writeSetEnd();
163-
BOOST_CHECK_THROW(protocol->readSetBegin(elemType, val), TTransportException*);
163+
BOOST_CHECK_THROW(protocol->readSetBegin(elemType, val), TTransportException);
164164
protocol->readSetEnd();
165165

166166
TMap map(T_I32, T_I32, 8);
167167
protocol->writeMapBegin(map.keyType_, map.valueType_, map.size_);
168168
protocol->writeMapEnd();
169-
BOOST_CHECK_THROW(protocol->readMapBegin(elemType, elemType1, val), TTransportException*);
169+
BOOST_CHECK_THROW(protocol->readMapBegin(elemType, elemType1, val), TTransportException);
170170
protocol->readMapEnd();
171171
}
172172

@@ -181,19 +181,19 @@ BOOST_AUTO_TEST_CASE(test_tthriftcompactprotocol_read_check_exception) {
181181
TList list(T_I32, 8);
182182
protocol->writeListBegin(list.elemType_, list.size_);
183183
protocol->writeListEnd();
184-
BOOST_CHECK_THROW(protocol->readListBegin(elemType, val), TTransportException*);
184+
BOOST_CHECK_THROW(protocol->readListBegin(elemType, val), TTransportException);
185185
protocol->readListEnd();
186186

187187
TSet set(T_I32, 8);
188188
protocol->writeSetBegin(set.elemType_, set.size_);
189189
protocol->writeSetEnd();
190-
BOOST_CHECK_THROW(protocol->readSetBegin(elemType, val), TTransportException*);
190+
BOOST_CHECK_THROW(protocol->readSetBegin(elemType, val), TTransportException);
191191
protocol->readSetEnd();
192192

193193
TMap map(T_I32, T_I32, 8);
194194
protocol->writeMapBegin(map.keyType_, map.valueType_, map.size_);
195195
protocol->writeMapEnd();
196-
BOOST_CHECK_THROW(protocol->readMapBegin(elemType, elemType1, val), TTransportException*);
196+
BOOST_CHECK_THROW(protocol->readMapBegin(elemType, elemType1, val), TTransportException);
197197
protocol->readMapEnd();
198198
}
199199

@@ -208,19 +208,19 @@ BOOST_AUTO_TEST_CASE(test_tthriftjsonprotocol_read_check_exception) {
208208
TList list(T_I32, 8);
209209
protocol->writeListBegin(list.elemType_, list.size_);
210210
protocol->writeListEnd();
211-
BOOST_CHECK_THROW(protocol->readListBegin(elemType, val), TTransportException*);
211+
BOOST_CHECK_THROW(protocol->readListBegin(elemType, val), TTransportException);
212212
protocol->readListEnd();
213213

214214
TSet set(T_I32, 8);
215215
protocol->writeSetBegin(set.elemType_, set.size_);
216216
protocol->writeSetEnd();
217-
BOOST_CHECK_THROW(protocol->readSetBegin(elemType, val), TTransportException*);
217+
BOOST_CHECK_THROW(protocol->readSetBegin(elemType, val), TTransportException);
218218
protocol->readSetEnd();
219219

220220
TMap map(T_I32, T_I32, 8);
221221
protocol->writeMapBegin(map.keyType_, map.valueType_, map.size_);
222222
protocol->writeMapEnd();
223-
BOOST_CHECK_THROW(protocol->readMapBegin(elemType, elemType1, val), TTransportException*);
223+
BOOST_CHECK_THROW(protocol->readMapBegin(elemType, elemType1, val), TTransportException);
224224
protocol->readMapEnd();
225225
}
226226

0 commit comments

Comments
 (0)