diff --git a/django/contrib/sessions/models.py b/django/contrib/sessions/models.py index 29adc6e30c..fda10c9743 100644 --- a/django/contrib/sessions/models.py +++ b/django/contrib/sessions/models.py @@ -15,8 +15,13 @@ class SessionManager(models.Manager): "Returns session key that isn't being used." # The random module is seeded when this Apache child is created. # Use SECRET_KEY as added salt. + try: + pid = os.getpid() + except AttributeError: + # No getpid() in Jython, for example + pid = 1 while 1: - session_key = md5.new("%s%s%s%s" % (random.randint(0, sys.maxint - 1), os.getpid(), time.time(), settings.SECRET_KEY)).hexdigest() + session_key = md5.new("%s%s%s%s" % (random.randint(0, sys.maxint - 1), pid, time.time(), settings.SECRET_KEY)).hexdigest() try: self.get(session_key=session_key) except self.model.DoesNotExist: diff --git a/django/core/mail.py b/django/core/mail.py index ff653400f9..b90752e649 100644 --- a/django/core/mail.py +++ b/django/core/mail.py @@ -50,7 +50,11 @@ def make_msgid(idstring=None): """ timeval = time.time() utcdate = time.strftime('%Y%m%d%H%M%S', time.gmtime(timeval)) - pid = os.getpid() + try: + pid = os.getpid() + except AttributeError: + # Not getpid() in Jython, for example. + pid = 1 randint = random.randrange(100000) if idstring is None: idstring = ''