summaryrefslogtreecommitdiff
path: root/src/torrent.c
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2011-10-03 09:50:03 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2011-10-03 09:50:03 +0000
commit74e77f943360008ae713a9b72ef3eb386879981a (patch)
tree045af453c0b09d89b218cf827d5f062884c65747 /src/torrent.c
parent5ce226277955a7d1aa6f5d0e00acb2ee98041003 (diff)
hopefully fix issue 132
Diffstat (limited to 'src/torrent.c')
-rw-r--r--src/torrent.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/torrent.c b/src/torrent.c
index 947d890..0455a89 100644
--- a/src/torrent.c
+++ b/src/torrent.c
@@ -194,6 +194,12 @@ gint64 torrent_get_activity_date(JsonObject *t)
guint32 torrent_get_flags(JsonObject * t, gint64 rpcv, gint64 status, gint64 downRate, gint64 upRate)
{
guint32 flags = 0;
+
+ if (torrent_get_is_finished(t) == TRUE)
+ flags |= TORRENT_FLAG_COMPLETE;
+ else
+ flags |= TORRENT_FLAG_INCOMPLETE;
+
if (rpcv >= NEW_STATUS_RPC_VERSION) {
switch (status) {
case TR_STATUS_STOPPED:
@@ -212,7 +218,8 @@ guint32 torrent_get_flags(JsonObject * t, gint64 rpcv, gint64 status, gint64 dow
flags |= TORRENT_FLAG_QUEUED;
break;
case TR_STATUS_DOWNLOAD:
- flags |= TORRENT_FLAG_DOWNLOADING;
+ if (!(flags & TORRENT_FLAG_COMPLETE))
+ flags |= TORRENT_FLAG_DOWNLOADING;
flags |= TORRENT_FLAG_ACTIVE;
break;
case TR_STATUS_SEED_WAIT:
@@ -247,11 +254,6 @@ guint32 torrent_get_flags(JsonObject * t, gint64 rpcv, gint64 status, gint64 dow
flags |= TORRENT_FLAG_ACTIVE;
}
- if (torrent_get_is_finished(t) == TRUE)
- flags |= TORRENT_FLAG_COMPLETE;
- else
- flags |= TORRENT_FLAG_INCOMPLETE;
-
if (strlen(torrent_get_errorstr(t)) > 0)
flags |= TORRENT_FLAG_ERROR;