Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 5400d249

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

Printer in Admin - kleine Korrekturen

1. Eine Debugmeldung rausgenommen
2. Eine Unsauberkeit behoben die beim Portieren auf 2.6.1 aufgefallen ist.
Folgender Code crasht:

for (1) {
1 while <>;
}

weil das gealiaste $_ read-only flagged ist, und <> das beschrieben will. Genau
das konnte passieren, wenn die Locales aus auth erstellt wurden und die
special_chars einlesen wollten, aber noch ein alias $_ => 1 aus dem
printer_dispatcher aktuell war.

3. Im admin bereich gezogene user_dbh wurden nicht richtig geschlossen, was ein
Speicherleck unter fcgi bedeutet, und unter cgi das log mit Warnungen flutet,
dass das handle in destruction geschlossen wurde und ein rollback gemacht hat.

Unterschiede anzeigen:

SL/Printer.pm
12 12
  my $query = qq|SELECT * FROM printers ORDER BY printer_description|;
13 13
  my @printers = selectall_hashref_query($::form, $dbh, $query);
14 14

  
15
  $dbh->disconnect;
16

  
15 17
  $::lxdebug->leave_sub;
16 18

  
17 19
  return wantarray ? @printers : \@printers;
......
27 29
  my $query = qq|SELECT * FROM printers WHERE id = ?|;
28 30
  my ($printer) = selectfirst_hashref_query($::form, $dbh, $query, $params{id});
29 31

  
32
  $dbh->disconnect;
33

  
30 34
  $::lxdebug->leave_sub;
31 35

  
32 36
  return $printer;
......
61 65
  );
62 66

  
63 67
  $dbh->commit;
68
  $dbh->disconnect;
64 69

  
65 70
  $::lxdebug->leave_sub;
66 71
}
......
76 81
  do_query($::form, $dbh, $query, $params{id});
77 82

  
78 83
  $dbh->commit;
84
  $dbh->disconnect;
79 85

  
80 86
  $::lxdebug->leave_sub;
81 87
}

Auch abrufbar als: Unified diff