# Byron Jones <bugzilla@glob.com.au>
# Marc Schumann <wurblzap@gmail.com>
+package Bugzilla::CGI;
use strict;
-package Bugzilla::CGI;
+use Bugzilla::Constants;
+use Bugzilla::Error;
+use Bugzilla::Util;
BEGIN {
- if ($^O =~ /MSWin32/i) {
+ if (ON_WINDOWS) {
# Help CGI find the correct temp directory as the default list
# isn't Windows friendly (Bug 248988)
$ENV{'TMPDIR'} = $ENV{'TEMP'} || $ENV{'TMP'} || "$ENV{'WINDIR'}\\TEMP";
}
}
-use CGI qw(-no_xhtml -oldstyle_urls :private_tempfiles :unique_headers SERVER_PUSH);
-
+use CGI qw(-no_xhtml -oldstyle_urls :private_tempfiles
+ :unique_headers SERVER_PUSH);
use base qw(CGI);
-use Bugzilla::Constants;
-use Bugzilla::Error;
-use Bugzilla::Util;
-
# We need to disable output buffering - see bug 179174
$| = 1;
my $check = check_multi(@_);
return $check if $check;
my $mailer = shift;
- if ($mailer eq 'sendmail' && $^O =~ /MSWin32/i) {
+ if ($mailer eq 'sendmail' and ON_WINDOWS) {
# look for sendmail.exe
return "Failed to locate " . SENDMAIL_EXE
unless -e SENDMAIL_EXE;
name => 'Oracle'},
};
-# The user who should be considered "root" when we're giving
-# instructions to Bugzilla administrators.
-use constant ROOT_USER => $^O =~ /MSWin32/i ? 'Administrator' : 'root';
-
# True if we're on Win32.
use constant ON_WINDOWS => ($^O =~ /MSWin32/i);
+# The user who should be considered "root" when we're giving
+# instructions to Bugzilla administrators.
+use constant ROOT_USER => ON_WINDOWS ? 'Administrator' : 'root';
+
use constant MIN_SMALLINT => -32768;
use constant MAX_SMALLINT => 32767;
close $pngfh;
# On Windows $pngfilename will contain \ instead of /
- $pngfilename =~ s|\\|/|g if $^O eq 'MSWin32';
+ $pngfilename =~ s|\\|/|g if ON_WINDOWS;
# Under mod_perl, pngfilename will have an absolute path, and we
# need to make that into a relative path.
###Compilation###
use strict;
-
-use lib 't';
-
+use lib qw(. lib t);
+use Bugzilla::Constants;
use Support::Files;
use Test::More tests => scalar(@Support::Files::testitems);
# Special hack due to CPAN.pm on Windows with Cygwin installed throwing
# strings of the form "Set up gcc environment - 3.4.4 (cygming special,
# gdc 0.12, using dmd 0.125)". See bug 416047 for details.
- if ($^O =~ /MSWin32/i
+ if (ON_WINDOWS
&& grep($_ eq $file, 'install-module.pl', 'Bugzilla/Install/CPAN.pm'))
{
$loginfo =~ s/^Set up gcc environment.*?\n//;
# Sample exploit code: '>"><script>alert('Oh dear...')</script>
use strict;
-use lib 't';
+use lib qw(. lib t);
use vars qw(%safe);
+use Bugzilla::Constants;
use Support::Templates;
use File::Spec;
use Test::More tests => $Support::Templates::num_actual_files;
$/ = undef;
foreach my $path (@Support::Templates::include_paths) {
- $path =~ s|\\|/|g if $^O eq 'MSWin32'; # convert \ to / in path if on windows
+ $path =~ s|\\|/|g if ON_WINDOWS; # convert \ to / in path if on windows
$path =~ m|template/([^/]+)/([^/]+)|;
my $lang = $1;
my $flavor = $2;
}
else {
do "filterexceptions.pl";
- if ($^O eq 'MSWin32') {
+ if (ON_WINDOWS) {
# filterexceptions.pl uses / separated paths, while
# find_actual_files returns \ separated ones on Windows.
# Here, we convert the filter exception hash to use \.
######Errors######
use strict;
+use lib qw(. lib t);
-use lib 't';
-
+use Bugzilla::Constants;
use Bugzilla::WebService::Constants;
use File::Spec;
foreach my $path (@{$actual_files{$include_path}}) {
my $file = File::Spec->catfile($include_path, $path);
$file =~ s/\s.*$//; # nuke everything after the first space
- $file =~ s|\\|/|g if $^O eq 'MSWin32'; # convert \ to / in path if on windows
+ $file =~ s|\\|/|g if ON_WINDOWS; # convert \ to / in path if on windows
$test_templates{$file} = ()
if $file =~ m#global/(code|user)-error\.html\.tmpl#;
}
# Try to determine the GID used by the web server.
my @pscmds = ('ps -eo comm,gid', 'ps -acxo command,gid', 'ps -acxo command,rgid');
my $sgid = 0;
-if ($^O !~ /MSWin32/i) {
+if (!ON_WINDOWS) {
foreach my $pscmd (@pscmds) {
open PH, "$pscmd 2>/dev/null |";
while (my $line = <PH>) {
If you are using virtual hosts or suexec, this warning may not apply.\n";
}
}
-elsif ($^O !~ /MSWin32/i) {
+elsif (!ON_WINDOWS) {
print
"TEST-WARNING Failed to find the GID for the 'httpd' process, unable
to validate webservergroup.\n";
# Ensure major versions of GD and libgd match
# Windows's GD module include libgd.dll, guaranteed to match
- if ($^O !~ /MSWin32/i) {
+ if (!ON_WINDOWS) {
my $gdlib = `gdlib-config --version 2>&1` || "";
$gdlib =~ s/\n$//;
if (!$gdlib) {