From 8ebc7a316016c4eb01cb77c8df1fe538c7bddf2a Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 16 Jun 2012 18:26:24 +0300 Subject: [PATCH] Updated basecommand.py such that writing to the log file doesn't fail. If permission is denied for writing in the specified log file the message will be written to a temporary one. --- pip/basecommand.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pip/basecommand.py b/pip/basecommand.py index dac161fe368..d189d398708 100644 --- a/pip/basecommand.py +++ b/pip/basecommand.py @@ -138,8 +138,13 @@ def main(self, args, initial_options): if store_log: log_fn = options.log_file text = '\n'.join(complete_log) - logger.fatal('Storing complete log in %s' % log_fn) - log_fp = open_logfile(log_fn, 'w') + try: + log_fp = open_logfile(log_fn, 'w') + except IOError: + temp = tempfile.NamedTemporaryFile(delete=False) + log_fn = temp.name + log_fp = open_logfile(log_fn, 'w') + logger.fatal('Storing complete log in %s' % log_fn) log_fp.write(text) log_fp.close() return exit