=== modified file 'Bugzilla/Error.pm' --- Bugzilla/Error.pm 2010-07-07 21:34:25 +0000 +++ Bugzilla/Error.pm 2011-03-05 07:36:18 +0000 @@ -35,6 +35,7 @@ use Carp; use Data::Dumper; use Date::Format; +use JSON; # We cannot use $^S to detect if we are in an eval(), because mod_perl # already eval'uates everything, so $^S = 1 in all cases under mod_perl! @@ -150,6 +151,17 @@ $server->response($server->error_response_header); } } + # ERROR_MODE_AJAX = 5, but we cannot use ERROR_MODE_AJAX from here. + elsif (Bugzilla->error_mode == 5) { + # JSON can't handle strings across lines. + $message =~ s/\n/ /gm; + my $err; + $err->{'success'} = JSON::false; + $err->{'error'} = $error; + $err->{'message'} = $message; + my $json = new JSON; + print $json->encode($err); + } } exit; } === modified file 'Bugzilla/Search.pm' --- Bugzilla/Search.pm 2011-03-01 13:43:24 +0000 +++ Bugzilla/Search.pm 2011-03-09 05:26:36 +0000 @@ -510,6 +510,13 @@ push(@supptables, "LEFT JOIN keyworddefs ON keyworddefs.id = keywords.keywordid"); } + ### Testopia ### + if (grep($_ eq 'test_cases', @fields)){ + push(@supptables, "LEFT JOIN test_case_bugs AS tcb " . + "ON bugs.bug_id = tcb.bug_id "); + } + ### end Testopia ### + # If the user has selected all of either status or resolution, change to # selecting none. This is functionally equivalent, but quite a lot faster. # Also, if the status is __open__ or __closed__, translate those