From 7de54ef0a25f546747ea9f2a536d5cb175abc566 Mon Sep 17 00:00:00 2001 From: Michael Moss Date: Fri, 13 Oct 2017 07:38:24 -0700 Subject: [PATCH] Fix handling of potential empty gitiles result. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes an issue introduced by crrev.com/b40a45149a73a6b00e92fd1d2df4c0b1543d0005 where a 404 result might return None contents. R=agable@google.com, phajdan@google.com Bug:774355 Change-Id: I993a029adb8d92cb27e043cd3d9b17cc8aee2432 Reviewed-on: https://chromium-review.googlesource.com/717937 Commit-Queue: Michael Moss Reviewed-by: Paweł Hajdan Jr. --- recipes/recipe_modules/gitiles/api.py | 2 ++ recipes/recipe_modules/gitiles/examples/full.py | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/recipes/recipe_modules/gitiles/api.py b/recipes/recipe_modules/gitiles/api.py index 0f79dedd2..c99957067 100644 --- a/recipes/recipe_modules/gitiles/api.py +++ b/recipes/recipe_modules/gitiles/api.py @@ -137,4 +137,6 @@ class Gitiles(recipe_api.RecipeApi): fmt='text', add_json_log=False, **kwargs) + if step_result.json.output['value'] is None: + return None return base64.b64decode(step_result.json.output['value']) diff --git a/recipes/recipe_modules/gitiles/examples/full.py b/recipes/recipe_modules/gitiles/examples/full.py index 9dca3ce20..6a249e54c 100644 --- a/recipes/recipe_modules/gitiles/examples/full.py +++ b/recipes/recipe_modules/gitiles/examples/full.py @@ -4,6 +4,7 @@ DEPS = [ 'gitiles', + 'recipe_engine/json', 'recipe_engine/properties', ] @@ -62,6 +63,6 @@ def GenTests(api): ) + api.step_data( 'fetch master:NONEXISTENT', - api.gitiles.make_encoded_file('') + api.json.output({'value': None}) ) )