Fix displaying invalid creation date

The bug is only observed when using libtorrent 1.2.
This commit is contained in:
Chocobo1 2019-04-01 22:40:05 +08:00
parent 3f10ac55a3
commit 3f962ba336
No known key found for this signature in database
GPG key ID: 210D9C873253A68C

View file

@ -28,7 +28,10 @@
#include "torrentinfo.h" #include "torrentinfo.h"
#if (LIBTORRENT_VERSION_NUM < 10200)
#include <boost/optional.hpp> #include <boost/optional.hpp>
#endif
#include <libtorrent/error_code.hpp> #include <libtorrent/error_code.hpp>
#include <QByteArray> #include <QByteArray>
@ -164,8 +167,14 @@ QString TorrentInfo::name() const
QDateTime TorrentInfo::creationDate() const QDateTime TorrentInfo::creationDate() const
{ {
if (!isValid()) return {}; if (!isValid()) return {};
const boost::optional<time_t> t = m_nativeInfo->creation_date();
return t ? QDateTime::fromTime_t(*t) : QDateTime(); #if (LIBTORRENT_VERSION_NUM < 10200)
const boost::optional<time_t> date = m_nativeInfo->creation_date();
return (date ? QDateTime::fromSecsSinceEpoch(*date) : QDateTime());
#else
const std::time_t date = m_nativeInfo->creation_date();
return ((date != 0) ? QDateTime::fromSecsSinceEpoch(date) : QDateTime());
#endif
} }
QString TorrentInfo::creator() const QString TorrentInfo::creator() const