Commit dbbd10e7 authored by Aymeric Augustin's avatar Aymeric Augustin
Browse files

Fixed #21420 -- Autoreloader on BSD with Python 3.

Thanks Bouke Haarsma for the report.
parent 6010b536
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ import traceback

from django.conf import settings
from django.core.signals import request_finished
from django.utils import six
try:
    from django.utils.six.moves import _thread as thread
except ImportError:
@@ -170,7 +171,8 @@ def kqueue_code_changed():

    # New modules may get imported when a request is processed. We add a file
    # descriptor to the kqueue to exit the kqueue.control after each request.
    watcher = tempfile.TemporaryFile(bufsize=0)
    buf_kwargs = {'buffering' if six.PY3 else 'bufsize': 0}
    watcher = tempfile.TemporaryFile(**buf_kwargs)
    kqueue.control([make_kevent(watcher)], 0)

    def update_watch(sender=None, **kwargs):