Index: gclient_utils.py |
diff --git a/gclient_utils.py b/gclient_utils.py |
index bad86915b332a02ce1c8cb826cdd1bbfe639c96e..1edce769a71e8dc3ad88384ee7a2c4fc22a230f8 100644 |
--- a/gclient_utils.py |
+++ b/gclient_utils.py |
@@ -732,3 +732,15 @@ def RunEditor(content, git): |
return FileRead(filename) |
finally: |
os.remove(filename) |
+ |
+ |
+def ParseCodereviewSettingsContent(content): |
+ """Process a codereview.settings file properly.""" |
+ lines = (l for l in content.splitlines() if not l.strip().startswith("#")) |
+ try: |
+ keyvals = dict([x.strip() for x in l.split(':', 1)] for l in lines if l) |
+ except ValueError: |
+ raise Error( |
+ 'Failed to process settings, please fix. Content:\n\n%s' % content) |
+ # TODO(maruel): Post-process |
+ return keyvals |