Ticket #6849: 6849.diff

File 6849.diff, 1.2 KB (added by Karen Tracey <kmtracey@…>, 7 years ago)
  • django/utils/daemonize.py

     
    11import os
    22import sys
     3import codecs
    34
    45if os.name == 'posix':
    56    def become_daemon(our_home_dir='.', out_log='/dev/null', err_log='/dev/null'):
     
    2425            os._exit(1)
    2526
    2627        si = open('/dev/null', 'r')
    27         so = open(out_log, 'a+', 0)
    28         se = open(err_log, 'a+', 0)
     28        so = codecs.open(out_log, 'a+', 'utf-8', 'replace', 0)
     29        se = codecs.open(err_log, 'a+', 'utf-8', 'replace', 0)
    2930        os.dup2(si.fileno(), sys.stdin.fileno())
    3031        os.dup2(so.fileno(), sys.stdout.fileno())
    3132        os.dup2(se.fileno(), sys.stderr.fileno())
     
    4344        sys.stdout.close()
    4445        sys.stderr.close()
    4546        if err_log:
    46             sys.stderr = open(err_log, 'a', 0)
     47            sys.stderr = codecs.open(err_log, 'a', 'utf-8', 'replace', 0)
    4748        else:
    4849            sys.stderr = NullDevice()
    4950        if out_log:
    50             sys.stdout = open(out_log, 'a', 0)
     51            sys.stdout = codecs.open(out_log, 'a', 'utf-8', 'replace', 0)
    5152        else:
    5253            sys.stdout = NullDevice()
    5354
Back to Top