From 087e497ab5776d54da7ee0ae4550679c65df28e4 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Wed, 7 Jan 2015 17:11:19 -0500 Subject: Replace reduce(operator.or_, ...) with any(...). The any() builtin was introduced in Python 2.5. Not only is its intent clearer, but it handles the case of zero items -- which the reduce(or_) construct does not. Sporadically we've seen exceptions from generate_breakpad_symbols.py when reduce(or_, ...) is given zero items. This masks the actual error (failure to dump symbols? failure to read them?), masquerading as a bug in the Python script. --- indra/newview/generate_breakpad_symbols.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/indra/newview/generate_breakpad_symbols.py b/indra/newview/generate_breakpad_symbols.py index 4181e4ebb3..d351c406bc 100755 --- a/indra/newview/generate_breakpad_symbols.py +++ b/indra/newview/generate_breakpad_symbols.py @@ -31,7 +31,6 @@ $/LicenseInfo$ import collections import fnmatch import itertools -import operator import os import re import sys @@ -149,7 +148,7 @@ def main(configuration, search_dirs, viewer_exes, libs_suffix, dump_syms_tool, v == os.path.splitext(os.path.basename(m))[0].lower() # there must be at least one .sym file in tarfile_members that matches # each required module (ignoring file extensions) - if not reduce(operator.or_, itertools.imap(match_module_basename, tarfile_members)): + if not any(itertools.imap(match_module_basename, tarfile_members)): print >> sys.stderr, "failed to find required %s in generated %s" \ % (required_module, viewer_symbol_file) os.remove(viewer_symbol_file) -- cgit v1.2.3