// file transfer request accepted or error happened void FileTransfer::ft_finished() { JT_FT *ft = d->ft; d->ft = 0; if(ft->success()) { d->state = Connecting; d->rangeOffset = ft->rangeOffset(); d->length = ft->rangeLength(); if(d->length == 0) d->length = d->size - d->rangeOffset; d->streamType = ft->streamType(); BytestreamManager *streamManager = d->m->streamManager(d->streamType); if (streamManager) { d->c = streamManager->createConnection(); if (dynamic_cast<S5BManager*>(streamManager) && d->proxy.isValid()) { ((S5BConnection*)(d->c))->setProxy(d->proxy); } connect(d->c, SIGNAL(connected()), SLOT(stream_connected())); connect(d->c, SIGNAL(connectionClosed()), SLOT(stream_connectionClosed())); connect(d->c, SIGNAL(bytesWritten(qint64)), SLOT(stream_bytesWritten(qint64))); connect(d->c, SIGNAL(error(int)), SLOT(stream_error(int))); d->c->connectToJid(d->peer, d->id); accepted(); } else {
void FileTransfer::ft_finished() { JT_FT *ft = d->ft; d->ft = 0; if(ft->success()) { d->state = Connecting; d->rangeOffset = ft->rangeOffset(); d->length = ft->rangeLength(); if(d->length == 0) d->length = d->size - d->rangeOffset; d->streamType = ft->streamType(); d->c = d->m->client()->s5bManager()->createConnection(); connect(d->c, SIGNAL(connected()), SLOT(s5b_connected())); connect(d->c, SIGNAL(connectionClosed()), SLOT(s5b_connectionClosed())); connect(d->c, SIGNAL(bytesWritten(int)), SLOT(s5b_bytesWritten(int))); connect(d->c, SIGNAL(error(int)), SLOT(s5b_error(int))); if(d->proxy.isValid()) d->c->setProxy(d->proxy); d->c->connectToJid(d->peer, d->id); accepted(); }