Schrift
[thread]6735[/thread]

warning: Attempt to free unreferenced scalar

Leser: 2


<< |< 1 2 3 >| >> 27 Einträge, 3 Seiten
steffenw
 2005-02-24 10:37
#52027 #52027
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
warning: Attempt to free unreferenced scalar: SV 0x21ad49c at ...

Kann mir mal jemand erklären, wodurch so etwas entsteht? Ich finde nämlich keinen Fehler.
$SIG{USER} = sub {love 'Perl' or die};
esskar
 2005-02-24 10:44
#52028 #52028
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
benutzt dur fork oder XS?
steffenw
 2005-02-24 10:55
#52029 #52029
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
nee, das ist ein "simples" CGI-Script
Code: (dl )
1
2
3
4
5
6
7
8
9
...
elsif {
 my $ref; # die Zeile wird angemeckert aber funktionieren tut alles
 if (
   %ab and $FORM{switch} eq 'ab' and $ref = \%ab
   or
   %ba and $FORM{switch} eq 'ba' and $ref = \%ba
 ) {
   ...
\n\n

<!--EDIT|steffenw|1109235404-->
$SIG{USER} = sub {love 'Perl' or die};
ptk
 2005-02-24 12:11
#52030 #52030
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Ueber Apache::Registry oder wirklich nur ein "reines" CGI-Skript?
steffenw
 2005-02-24 13:51
#52031 #52031
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
Also ich habe es jetzt in einer Shellumgebung unter Windows laufen lassen, es entsprechend parametriert und STDOUT und STDERR in eine Datei umgeleitet. Es kommt genau das gleiche Ergebnis. Der Webserver ist übrigens kein Apache, jedenfalls nicht der, worauf das Script läuft aber nach meinem Test eben ist das ja auch egal.
$SIG{USER} = sub {love 'Perl' or die};
esskar
 2005-02-24 14:11
#52032 #52032
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
und die angegebene stelle ist wirklich die stelle?
renee
 2005-02-24 14:14
#52033 #52033
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Zeig doch mal etwas mehr Code...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
steffenw
 2005-02-24 14:28
#52034 #52034
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
@esskar hat Recht. Es ist die Stelle davor. Aber es wird deswegen nicht klarer.
Code: (dl )
1
2
3
4
5
$headline =
 $mt{Auftragsteil}
.' '
.werk($werk{$tabnr})
.$FORM{online} ? '' : " ($mt{nicht}$nbsp$mt{online})";
\n\n

<!--EDIT|steffenw|1109248167-->
$SIG{USER} = sub {love 'Perl' or die};
steffenw
 2005-02-24 14:40
#52035 #52035
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
Doch ich hab's, es liegt an Locale::Maketext, denn %mt ist bei FETCH mit Tie an die Methode maketext() gebunden.
Ich habe jetzt geschrieben:
Code: (dl )
1
2
3
4
5
6
7
{ my %mt = qw/Auftragsteil Auftragsteil nicht nicht online online/;
 $headline =
   $mt{Auftragsteil}
  .' '
  .werk($werk{$tabnr})
  .$FORM{online} ? '' : " ($mt{nicht}$nbsp$mt{online})";
}
und die Warnung ist keine mehr.

Mittlerweile habe ich Locale::Maketext::DEBUG gesetzt und festgestellt, daß ich nicht der Verursacher der Warnung bin. Ergebnis:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
<!-- warning: ­­­ begin of steffenw_code ­­­ at ... steffenw_script.pl line 1513. -->
* Looking up "Auftragsteil" in HASH(0x208f218)
 Automaking "Auftragsteil" into HASH(0x208f218)
<!-- warning: Attempt to free unreferenced scalar: SV 0x21a6044 at ... /Perl/lib/Locale/Maketext.pm line 202. -->
* Looking up "nicht" in HASH(0x208f218)
 Automaking "nicht" into HASH(0x208f218)
* Looking up "online" in HASH(0x208f218)
 Automaking "online" into HASH(0x208f218)
<!-- warning: Attempt to free unreferenced scalar: SV 0x21acef4 at ... steffenw_script.pl line 1515. -->
<!-- warning: ­­­ end of steffenw_code ­­­ at ... steffenw_script.pl line 1515. -->
\n\n

<!--EDIT|steffenw|1109250278-->
$SIG{USER} = sub {love 'Perl' or die};
steffenw
 2005-02-25 00:00
#52036 #52036
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
"Attempt to free unreferenced scalar" was bedeutet das? Das war eigentlich meine ursprüngliche Frage. Wie kann ich so eine Warnung provozieren?
$SIG{USER} = sub {love 'Perl' or die};
<< |< 1 2 3 >| >> 27 Einträge, 3 Seiten



View all threads created 2005-02-24 10:37.