MessageHeader * NNTPSession::fetchHeader(String *groupName, unsigned int index, ErrorCode * pError) { int r; char * content; size_t content_len; MCLog("fetch header at index %u", index); selectGroup(groupName, pError); if (* pError != ErrorNone) { return NULL; } r = newsnntp_head(mNNTP, index, &content, &content_len); if (r != NEWSNNTP_NO_ERROR) { * pError = ErrorFetchMessageList; return NULL; } Data * data; data = new Data(content, (unsigned int) content_len); MessageHeader * result = new MessageHeader(); result->importHeadersData(data); result->autorelease(); data->release(); newsnntp_head_free(content); * pError = ErrorNone; return result; }