diff --git a/mercurial/statprof.py b/mercurial/statprof.py index ad4c0236168dc374e73f9fc0987c03bcd2a2d618_bWVyY3VyaWFsL3N0YXRwcm9mLnB5..f42cd5434cc20f06a0595efeede1c09dcd8a9694_bWVyY3VyaWFsL3N0YXRwcm9mLnB5 100755 --- a/mercurial/statprof.py +++ b/mercurial/statprof.py @@ -311,5 +311,6 @@ state.accumulate_time(clock()) state.last_start_time = None statprofpath = os.environ.get('STATPROF_DEST') - save_data(statprofpath) + if statprofpath: + save_data(statprofpath) @@ -315,9 +316,6 @@ -def save_data(path=None): - try: - path = path or (os.environ['HOME'] + '/statprof.data') - file = open(path, "w+") - +def save_data(path): + with open(path, 'w+') as file: file.write(str(state.accumulated_time) + '\n') for sample in state.samples: time = str(sample.time) @@ -326,13 +324,7 @@ for s in stack] file.write(time + '\0' + '\0'.join(sites) + '\n') - file.close() - except (IOError, OSError): - # The home directory probably didn't exist, or wasn't writable. Oh well. - pass - -def load_data(path=None): - path = path or (os.environ['HOME'] + '/statprof.data') +def load_data(path): lines = open(path, 'r').read().splitlines() state.accumulated_time = float(lines[0])