diff --git a/peertalk/PTProtocol.m b/peertalk/PTProtocol.m index 24f4423..c562534 100644 --- a/peertalk/PTProtocol.m +++ b/peertalk/PTProtocol.m @@ -198,7 +198,7 @@ - (void)readFrameOverChannel:(dispatch_io_t)channel callback:(void(^)(NSError *e - (void)readPayloadOfSize:(size_t)payloadSize overChannel:(dispatch_io_t)channel callback:(void(^)(NSError *error, dispatch_data_t contiguousData, const uint8_t *buffer, size_t bufferSize))callback { __block dispatch_data_t allData = NULL; dispatch_io_read(channel, 0, payloadSize, queue_, ^(bool done, dispatch_data_t data, int error) { - size_t dataSize = dispatch_data_get_size(data); + size_t dataSize = data ? dispatch_data_get_size(data) : 0; if (dataSize) { if (!allData) {