upload_symbols: fix race w/failed_queue usage
The current code might leave elements in the queue depending on the
code flow (emtpy returns True because elements are in flight and not
yet registered). Instead, require a sentinel None value in this func
as that should never show up normally (we always expect strings).
BUG=chromium:349043
TEST=`./scripts/upload_symbols_unittest.py` no longer flakes locally
Change-Id: I420e8df0a40e8c0e486f61e9e8b05a9c07182044
Reviewed-on: https://chromium-review.googlesource.com/189410
Reviewed-by: David James <davidjames@chromium.org>
Commit-Queue: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
diff --git a/scripts/upload_symbols_unittest.py b/scripts/upload_symbols_unittest.py
index 0e1ac1f..3d0d213 100755
--- a/scripts/upload_symbols_unittest.py
+++ b/scripts/upload_symbols_unittest.py
@@ -341,6 +341,7 @@
q = multiprocessing.Queue()
for f in exp_list:
q.put(os.path.join(relpath, f))
+ q.put(None)
upload_symbols.WriteQueueToFile(listing, q, '/a')
got_list = osutils.ReadFile(listing).splitlines()