Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 5494f687

Von Sven Schöling vor etwa 13 Jahren hinzugefügt

  • ID 5494f687372570c9d1c5eb5c6aad73767e50820a
  • Vorgänger a064deaf
  • Nachfolger 3b9a5301

$::cgi entfernt.

Verfahren:
- Für alle Vorkommen von "my $cgi = $::cgi;":
ersetzt durch my $cgi = $::request->{cgi}->new({}) ersetzt

- Wenn in einer Datei alle my $cgi rausgefallen sind auch use CGI entfernt.

- Initialisierung von $::cgi in scripts und Dispatcher entfernt und in dei
Initialisierung von $::request eingebaut.

- cgi aus der Liste der kanonischen globals genommen.

Zu CGI:
- CGI::func und CGI->func sind beides valide Werte, sind aber intern buggy wie
Hölle. CGI:: erzeugt ein Dummyobjekt mit CGI->new, und klobbert damit
cookies. CGI-> ist noch schlimmer und ruft ${CGI}->{.cookies} auf.
- CGI->new({}) ist schneller als CGI->new(''), deshalb habe ich diese version genommen.
Auf meinem Rechner schafft die erste Version etwa 32k/s, die zweite 28k/s.
- CGI kompiliert benötigte Funktionen beim ersten Aufruf über AUTOLOAD.
- cookie benötigen ein $cgi Objekt.

Unterschiede anzeigen:

SL/Dispatcher.pm
168 168

  
169 169
  $self->unrequire_bin_mozilla;
170 170

  
171
  $::cgi           = CGI->new('');
172 171
  $::locale        = Locale->new($::lx_office_conf{system}->{language});
173 172
  $::form          = Form->new;
174 173
  $::instance_conf = SL::InstanceConfiguration->new;
175
  $::request       = { };
174
  $::request       = { cgi => CGI->new({}) };
176 175

  
177 176
  my $session_result = $::auth->restore_session;
178 177
  $::auth->create_or_refresh_session;
......
240 239
  } or do {
241 240
    if ($EVAL_ERROR ne END_OF_REQUEST) {
242 241
      print STDERR $EVAL_ERROR;
243
      $::form->{label_error} = $::cgi->pre($EVAL_ERROR);
242
      $::form->{label_error} = $::request->{cgi}->pre($EVAL_ERROR);
244 243
      eval { show_error('generic/error') };
245 244
    }
246 245
  };
......
311 310

  
312 311
    1;
313 312
  } or do {
314
    $::form->{label_error} = $::cgi->pre($EVAL_ERROR);
313
    $::form->{label_error} = $::request->{cgi}->pre($EVAL_ERROR);
315 314
    show_error('generic/error');
316 315
  };
317 316

  
......
328 327

  
329 328
    1;
330 329
  } or do {
331
    $::form->{label_error} = $::cgi->pre($EVAL_ERROR);
330
    $::form->{label_error} = $::request->{cgi}->pre($EVAL_ERROR);
332 331
    show_error('generic/error');
333 332
  };
334 333

  

Auch abrufbar als: Unified diff