summaryrefslogtreecommitdiffstats
path: root/module/web/manage.py
diff options
context:
space:
mode:
authorGravatar mkaay <mkaay@mkaay.de> 2009-12-20 23:22:46 +0100
committerGravatar mkaay <mkaay@mkaay.de> 2009-12-20 23:22:46 +0100
commit77ebea73401f00f9150299317bdddaa24beddd2a (patch)
tree6e28ad2ddb138296a227b0ffb92100b64b94d669 /module/web/manage.py
parentmerge (diff)
downloadpyload-77ebea73401f00f9150299317bdddaa24beddd2a.tar.xz
file_list fix, webinterface termination fix AGAIN -.-'
Diffstat (limited to 'module/web/manage.py')
-rw-r--r--module/web/manage.py27
1 files changed, 18 insertions, 9 deletions
diff --git a/module/web/manage.py b/module/web/manage.py
index ae9495854..782f6fbe0 100644
--- a/module/web/manage.py
+++ b/module/web/manage.py
@@ -1,12 +1,21 @@
#!/usr/bin/env python
-from django.core.management import execute_manager
-try:
- import settings # Assumed to be in the same directory.
-except ImportError:
- import sys
- sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__)
- sys.exit(1)
+import os
-if __name__ == "__main__":
- execute_manager(settings)
+pid = os.fork()
+
+if pid:
+ with open("webserver.pid", "w") as f:
+ f.write(str(pid))
+else:
+ from django.core.management import execute_manager
+
+ try:
+ import settings # Assumed to be in the same directory.
+ except ImportError:
+ import sys
+ sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__)
+ sys.exit(1)
+
+ if __name__ == "__main__":
+ execute_manager(settings)