summaryrefslogtreecommitdiffstats
path: root/pacredir.c
diff options
context:
space:
mode:
Diffstat (limited to 'pacredir.c')
-rw-r--r--pacredir.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/pacredir.c b/pacredir.c
index fbb09bd..12bd03d 100644
--- a/pacredir.c
+++ b/pacredir.c
@@ -444,8 +444,11 @@ static int ahc_echo(void * cls,
if (request->http_code == MHD_HTTP_OK &&
/* for db files choose the most recent server */
- ((dbfile == 1 && request->last_modified >= last_modified &&
- request->time_total < time_total) ||
+ ((dbfile == 1 && ((request->last_modified > last_modified) ||
+ /* but use a faster server if available */
+ (url != NULL &&
+ request->last_modified >= last_modified &&
+ request->time_total < time_total))) ||
/* for packages try to guess the fastest server */
(dbfile == 0 && request->time_total < time_total))) {
if (url != NULL)