зеркало из https://github.com/mozilla/gecko-dev.git
Bug 104589 - prevent user closing window from terminating Bugzilla scripts. Patch by Gerv <gerv@mozilla.org>, r=justdave, myk
This commit is contained in:
Родитель
d630481b76
Коммит
e4bc59e823
|
@ -1321,6 +1321,12 @@ ReconnectToShadowDatabase();
|
|||
# to avoid "table out of space" errors on MySQL versions less than 3.23.2.
|
||||
SendSQL("SET OPTION SQL_BIG_TABLES=1") if Param('expectbigqueries');
|
||||
|
||||
# Normally, we ignore SIGTERM and SIGPIPE (see globals.pl) but we need to
|
||||
# respond to them here to prevent someone DOSing us by reloading a query
|
||||
# a large number of times.
|
||||
$::SIG{TERM} = 'DEFAULT';
|
||||
$::SIG{PIPE} = 'DEFAULT';
|
||||
|
||||
# Execute the query.
|
||||
SendSQL($query);
|
||||
|
||||
|
|
|
@ -91,6 +91,12 @@ delete @::ENV{'PATH', 'IFS', 'CDPATH', 'ENV', 'BASH_ENV'};
|
|||
# system call
|
||||
$::ENV{'PATH'} = '';
|
||||
|
||||
# Ignore SIGTERM and SIGPIPE - this prevents DB corruption. If the user closes
|
||||
# their browser window while a script is running, the webserver sends these
|
||||
# signals, and we don't want to die half way through a write.
|
||||
$::SIG{TERM} = 'IGNORE';
|
||||
$::SIG{PIPE} = 'IGNORE';
|
||||
|
||||
# Contains the version string for the current running Bugzilla.
|
||||
$::param{'version'} = '2.15';
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче