 Issue 5406295150559232:
  wrong icons parameter value in manifest.json for chrome buildtool fix.  (Closed)
    
  
    Issue 5406295150559232:
  wrong icons parameter value in manifest.json for chrome buildtool fix.  (Closed) 
  | Index: packagerChrome.py | 
| =================================================================== | 
| --- a/packagerChrome.py | 
| +++ b/packagerChrome.py | 
| @@ -20,6 +20,7 @@ | 
| import packager | 
| from packager import readMetadata, getMetadataPath, getDefaultFileName, getBuildVersion, getTemplate, Files | 
| +from imageConversion import convertImages, getImageSize | 
| defaultLocale = 'en_US' | 
| @@ -50,7 +51,7 @@ | 
| # that it can be overridden if necessary. | 
| return data | 
| -def createManifest(params): | 
| +def createManifest(params, files): | 
| template = getTemplate('manifest.json.tmpl') | 
| templateData = dict(params) | 
| @@ -73,18 +74,11 @@ | 
| if metadata.has_option('general', 'icons'): | 
| icons = {} | 
| - iconsDir = baseDir | 
| - for dir in metadata.get('general', 'icons').split('/')[0:-1]: | 
| - iconsDir = os.path.join(iconsDir, dir) | 
| - | 
| - prefix, suffix = metadata.get('general', 'icons').split('/')[-1].split('?', 1) | 
| - for file in os.listdir(iconsDir): | 
| - path = os.path.join(iconsDir, file) | 
| - if os.path.isfile(path) and file.startswith(prefix) and file.endswith(suffix): | 
| - size = file[len(prefix):-len(suffix)] | 
| - if not re.search(r'\D', size): | 
| - icons[size] = os.path.relpath(path, baseDir).replace('\\', '/') | 
| - | 
| + for icon in re.split('\s+', metadata.get('general', 'icons')): | 
| + iconSize = getImageSize(files[icon]) | 
| 
Wladimir Palant
2014/03/19 12:11:48
Please use destructuring assignment here, that's e
 
saroyanm
2014/03/19 14:54:18
Done.
 | 
| + if(iconSize[0] != iconSize[1]): | 
| + print 'Warning: %s size is %ix%i, icon should be square' % (icon, iconSize[0], iconSize[1]) | 
| + icons[iconSize[0]] = icon | 
| templateData['icons'] = icons | 
| if metadata.has_option('general', 'permissions'): | 
| @@ -345,7 +339,7 @@ | 
| files = Files(getPackageFiles(params), getIgnoredFiles(params), | 
| process=lambda path, data: processFile(path, data, params)) | 
| - files['manifest.json'] = createManifest(params) | 
| + | 
| if metadata.has_section('mapping'): | 
| files.readMappedFiles(metadata.items('mapping')) | 
| files.read(baseDir) | 
| @@ -354,7 +348,6 @@ | 
| convertJS(params, files) | 
| if metadata.has_section('convert_img'): | 
| - from imageConversion import convertImages | 
| convertImages(params, files) | 
| if metadata.has_section('preprocess'): | 
| @@ -365,7 +358,8 @@ | 
| if metadata.has_section('import_locales'): | 
| importGeckoLocales(params, files) | 
| - | 
| + | 
| + files['manifest.json'] = createManifest(params, files) | 
| fixMissingTranslations(files) | 
| if devenv: |