| Index: chrome/tools/extensions/chromium_extension.py
|
| diff --git a/chrome/tools/extensions/chromium_extension.py b/chrome/tools/extensions/chromium_extension.py
|
| index 81e466215bfdce8d9b24a900159cd23af515c859..f6ecebc4e4b121e89ecd41337673755e63d84629 100755
|
| --- a/chrome/tools/extensions/chromium_extension.py
|
| +++ b/chrome/tools/extensions/chromium_extension.py
|
| @@ -10,6 +10,7 @@ import hashlib
|
| import logging
|
| import optparse
|
| import os
|
| +import random
|
| import re
|
| import shutil
|
| import sys
|
| @@ -53,10 +54,23 @@ class ExtensionDir:
|
| if not self.validate():
|
| return False
|
| try:
|
| - f = open(os.path.join(self._root, MANIFEST_FILENAME))
|
| + f = open(os.path.join(self._root, MANIFEST_FILENAME), "r")
|
| manifest = json.load(f)
|
| f.close()
|
|
|
| + # Temporary hack: If the manifest doesn't have an ID, generate a random
|
| + # one. This is to make it easier for people to play with the extension
|
| + # system while we don't have the real ID mechanism in place.
|
| + if not "id" in manifest:
|
| + random_id = ""
|
| + for i in range(0, 40):
|
| + random_id += "0123456789ABCDEF"[random.randrange(0, 15)]
|
| + logging.info("Generated extension ID: %s" % random_id)
|
| + manifest["id"] = random_id;
|
| + f = open(os.path.join(self._root, MANIFEST_FILENAME), "w")
|
| + f.write(json.dumps(manifest, sort_keys=True, indent=2));
|
| + f.close();
|
| +
|
| zip_path = path + ".zip"
|
| if os.path.exists(zip_path):
|
| os.remove(zip_path)
|
|
|