[game-data-packager] 01/01: choose mirror: always prefer public name over internal name

Alexandre Detiste detiste-guest at moszumanska.debian.org
Tue Nov 10 09:32:16 UTC 2015


This is an automated email from the git hooks/post-receive script.

detiste-guest pushed a commit to branch master
in repository game-data-packager.

commit ebc0f3bd66afe0470526468e3f0444ed5d346e12
Author: Alexandre Detiste <alexandre.detiste at gmail.com>
Date:   Tue Nov 10 10:31:28 2015 +0100

    choose mirror: always prefer public name over internal name
    
    unless the public name is not a file but a request with a '?'
---
 game_data_packager/build.py | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/game_data_packager/build.py b/game_data_packager/build.py
index fccd663..b029784 100644
--- a/game_data_packager/build.py
+++ b/game_data_packager/build.py
@@ -289,11 +289,12 @@ def choose_mirror(wanted):
     if type(wanted.download) is str:
         if not mirror:
             return [wanted.download]
-        if ' ' not in wanted.name:
-            mirrors.append(mirror + wanted.name)
         url_basename = os.path.basename(wanted.download)
-        if url_basename != wanted.name and '?' not in url_basename:
+        if '?' not in url_basename:
             mirrors.append(mirror + url_basename)
+        wanted.name = wanted.name.replace(' ','%20')
+        if wanted.name != url_basename and '?' not in wanted.name:
+            mirrors.append(mirror + wanted.name)
         mirrors.append(wanted.download)
         return mirrors
 
@@ -315,11 +316,16 @@ def choose_mirror(wanted):
                 url = url + details.get('name', wanted.name)
                 mirrors.append(url)
         except:
+            url = None
             logger.warning('Could not open mirror list "%s"', mirror_list,
                     exc_info=True)
     random.shuffle(mirrors)
     if mirror:
-        mirrors.insert(0, mirror + wanted.name)
+        url_basename = os.path.basename(url)
+        if url and '?' not in url_basename:
+            mirrors.insert(0, mirror + url_basename)
+        elif '?' not in wanted.name:
+            mirrors.insert(0, mirror + wanted.name)
     if not mirrors:
         logger.error('Could not select a mirror for "%s"', wanted.name)
         return []

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git



More information about the Pkg-games-commits mailing list