Merge branch 'master' of github.com:web2py/web2py
This commit is contained in:
@@ -48,7 +48,13 @@ def stopcron():
|
||||
global _cron_stopping
|
||||
_cron_stopping = True
|
||||
while _cron_subprocs:
|
||||
_cron_subprocs.pop().terminate()
|
||||
proc = _cron_subprocs.pop()
|
||||
if proc.poll() is None:
|
||||
try:
|
||||
proc.terminate()
|
||||
except:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
|
||||
class extcron(threading.Thread):
|
||||
|
||||
@@ -254,7 +260,10 @@ class cronlauncher(threading.Thread):
|
||||
shell=self.shell)
|
||||
_cron_subprocs.append(proc)
|
||||
(stdoutdata, stderrdata) = proc.communicate()
|
||||
_cron_subprocs.remove(proc)
|
||||
try:
|
||||
_cron_subprocs.remove(proc)
|
||||
except ValueError:
|
||||
pass
|
||||
if proc.returncode != 0:
|
||||
logger.warning(
|
||||
'WEB2PY CRON Call returned code %s:\n%s' %
|
||||
@@ -320,8 +329,8 @@ def crondance(applications_parent, ctype='soft', startup=False, apps=None):
|
||||
w2p_path = fileutils.abspath('web2py.py', gluon=True)
|
||||
if os.path.exists(w2p_path):
|
||||
commands.append(w2p_path)
|
||||
if global_settings.applications_parent != global_settings.gluon_parent:
|
||||
commands.extend(('-f', global_settings.applications_parent))
|
||||
if applications_parent != global_settings.gluon_parent:
|
||||
commands.extend(('-f', applications_parent))
|
||||
citems = [(k in task and not v in task[k]) for k, v in checks]
|
||||
task_min = task.get('min', [])
|
||||
if not task:
|
||||
|
||||
@@ -225,8 +225,8 @@ class web2pyDialog(object):
|
||||
text=str(ProgramVersion + "\n" + ProgramAuthor),
|
||||
font=('Helvetica', 11), justify=Tkinter.CENTER,
|
||||
foreground='#195866', background=bg_color,
|
||||
height=3).pack( side='top',
|
||||
fill='both',
|
||||
height=3).pack( side='top',
|
||||
fill='both',
|
||||
expand='yes')
|
||||
|
||||
self.bannerarea.after(1000, self.update_canvas)
|
||||
@@ -246,7 +246,7 @@ class web2pyDialog(object):
|
||||
[('0.0.0.0', 'Public')]
|
||||
for ip, legend in ips:
|
||||
self.ips[ip] = Tkinter.Radiobutton(
|
||||
self.root, bg=bg_color, highlightthickness=0,
|
||||
self.root, bg=bg_color, highlightthickness=0,
|
||||
selectcolor='light grey', width=30,
|
||||
anchor=Tkinter.W, text='%s (%s)' % (legend, ip),
|
||||
justify=Tkinter.LEFT,
|
||||
@@ -1119,6 +1119,8 @@ def start(cron=True):
|
||||
|
||||
# ## if -S start interactive shell (also no cron)
|
||||
if options.shell:
|
||||
if options.folder:
|
||||
os.chdir(options.folder)
|
||||
if not options.args is None:
|
||||
sys.argv[:] = options.args
|
||||
run(options.shell, plain=options.plain, bpython=options.bpython,
|
||||
|
||||
Reference in New Issue
Block a user