mirror of
https://github.com/transmission/transmission
synced 2025-02-20 13:16:53 +00:00
make stalled check work for minutes, not seconds
This commit is contained in:
parent
0f9766145b
commit
c8ac8e312b
9 changed files with 20 additions and 16 deletions
|
@ -898,9 +898,13 @@ static int ioInitRemove( tr_torrent_t * tor )
|
|||
if( node != NULL )
|
||||
{
|
||||
if( prev == NULL )
|
||||
{
|
||||
ioInitQueue = node->next;
|
||||
}
|
||||
else
|
||||
{
|
||||
prev->next = node->next;
|
||||
}
|
||||
}
|
||||
|
||||
tr_lockUnlock( lock );
|
||||
|
|
|
@ -100,8 +100,8 @@
|
|||
<integer>10</integer>
|
||||
<key>SpeedLimitUploadLimit</key>
|
||||
<integer>10</integer>
|
||||
<key>StalledSeconds</key>
|
||||
<integer>300</integer>
|
||||
<key>StalledMinutes</key>
|
||||
<integer>30</integer>
|
||||
<key>StatusBar</key>
|
||||
<true/>
|
||||
<key>UpdateCheck</key>
|
||||
|
|
2
macosx/English.lproj/PrefsWindow.nib/classes.nib
generated
2
macosx/English.lproj/PrefsWindow.nib/classes.nib
generated
|
@ -26,7 +26,7 @@
|
|||
setSound = id;
|
||||
setSpeedLimit = id;
|
||||
setStalled = id;
|
||||
setStalledSeconds = id;
|
||||
setStalledMinutes = id;
|
||||
setUpdate = id;
|
||||
};
|
||||
CLASS = PrefsController;
|
||||
|
|
2
macosx/English.lproj/PrefsWindow.nib/info.nib
generated
2
macosx/English.lproj/PrefsWindow.nib/info.nib
generated
|
@ -11,7 +11,7 @@
|
|||
<key>28</key>
|
||||
<string>294 421 563 313 0 0 1152 842 </string>
|
||||
<key>41</key>
|
||||
<string>51 405 563 305 0 0 1152 842 </string>
|
||||
<string>152 430 563 305 0 0 1152 842 </string>
|
||||
<key>66</key>
|
||||
<string>294 506 563 144 0 0 1152 842 </string>
|
||||
</dict>
|
||||
|
|
BIN
macosx/English.lproj/PrefsWindow.nib/keyedobjects.nib
generated
BIN
macosx/English.lproj/PrefsWindow.nib/keyedobjects.nib
generated
Binary file not shown.
|
@ -69,7 +69,7 @@
|
|||
- (void) setQueueNumber: (id) sender;
|
||||
|
||||
- (void) setStalled: (id) sender;
|
||||
- (void) setStalledSeconds: (id) sender;
|
||||
- (void) setStalledMinutes: (id) sender;
|
||||
|
||||
- (void) setDownloadLocation: (id) sender;
|
||||
- (void) folderSheetShow: (id) sender;
|
||||
|
|
|
@ -156,7 +156,7 @@
|
|||
[fQueueSeedField setIntValue: [fDefaults integerForKey: @"QueueSeedNumber"]];
|
||||
|
||||
//set stalled value
|
||||
[fStalledField setIntValue: [fDefaults integerForKey: @"StalledSeconds"]];
|
||||
[fStalledField setIntValue: [fDefaults integerForKey: @"StalledMinutes"]];
|
||||
|
||||
//set update check
|
||||
NSString * updateCheck = [fDefaults stringForKey: @"UpdateCheck"];
|
||||
|
@ -495,17 +495,17 @@
|
|||
[[NSNotificationCenter defaultCenter] postNotificationName: @"UpdateUI" object: self];
|
||||
}
|
||||
|
||||
- (void) setStalledSeconds: (id) sender
|
||||
- (void) setStalledMinutes: (id) sender
|
||||
{
|
||||
int seconds = [sender intValue];
|
||||
if (![[sender stringValue] isEqualToString: [NSString stringWithFormat: @"%d", seconds]] || seconds < 1)
|
||||
int minutes = [sender intValue];
|
||||
if (![[sender stringValue] isEqualToString: [NSString stringWithFormat: @"%d", minutes]] || minutes < 1)
|
||||
{
|
||||
NSBeep();
|
||||
[sender setIntValue: [fDefaults integerForKey: @"StalledSeconds"]];
|
||||
[sender setIntValue: [fDefaults integerForKey: @"StalledMinutes"]];
|
||||
return;
|
||||
}
|
||||
|
||||
[fDefaults setInteger: seconds forKey: @"StalledSeconds"];
|
||||
[fDefaults setInteger: minutes forKey: @"StalledMinutes"];
|
||||
[self setStalled: nil];
|
||||
}
|
||||
|
||||
|
|
|
@ -208,7 +208,7 @@
|
|||
- (NSDate *) dateCompleted;
|
||||
- (NSDate *) dateActivity;
|
||||
|
||||
- (int) stalledSeconds;
|
||||
- (int) stalledMinutes;
|
||||
- (BOOL) isStalled;
|
||||
|
||||
- (NSNumber *) stateSortKey;
|
||||
|
|
|
@ -464,7 +464,7 @@ static uint32_t kRed = BE(0xFF6450FF), //255, 100, 80
|
|||
//check if stalled
|
||||
BOOL wasStalled = fStalled;
|
||||
fStalled = [self isActive] && [fDefaults boolForKey: @"CheckStalled"]
|
||||
&& [fDefaults integerForKey: @"StalledSeconds"] < [self stalledSeconds];
|
||||
&& [fDefaults integerForKey: @"StalledMinutes"] < [self stalledMinutes];
|
||||
|
||||
//create strings for error or stalled
|
||||
if (fError)
|
||||
|
@ -1378,7 +1378,7 @@ static uint32_t kRed = BE(0xFF6450FF), //255, 100, 80
|
|||
return date != 0 ? [NSDate dateWithTimeIntervalSince1970: date] : fDateActivity;
|
||||
}
|
||||
|
||||
- (int) stalledSeconds
|
||||
- (int) stalledMinutes
|
||||
{
|
||||
uint64_t start;
|
||||
if ((start = fStat->startDate) == 0)
|
||||
|
@ -1387,9 +1387,9 @@ static uint32_t kRed = BE(0xFF6450FF), //255, 100, 80
|
|||
NSDate * started = [NSDate dateWithTimeIntervalSince1970: start / 1000],
|
||||
* activity = [self dateActivity];
|
||||
if (!activity || [started compare: activity] == NSOrderedDescending)
|
||||
return -1 * [started timeIntervalSinceNow];
|
||||
return -1 * [started timeIntervalSinceNow] / 60;
|
||||
else
|
||||
return -1 * [activity timeIntervalSinceNow];
|
||||
return -1 * [activity timeIntervalSinceNow] / 60;
|
||||
}
|
||||
|
||||
- (BOOL) isStalled
|
||||
|
|
Loading…
Reference in a new issue