[Israel.pm] How to debug Attempt to free unreferenced scalar: SV 0x23e24ec messages ?

Roey Almog arnet at zahav.net.il
Wed Mar 19 15:07:42 EET 2008


Hi,
We have a long running script that starts producing the following
errors after a while:
Attempt to free unreferenced scalar: SV 0x23e24ec, Perl interpreter:
0x6d73bc at /<C:\\projects\\4\\main_search.pl>inc_search_maint.pm line
216.
The code sorounding looks like this:

$self->{DataSource}->{position_id}->SetValue($self->{position_id}->GetValue());
if ( CCDLookUp("COUNT(*)",
                       "search",
                        "position_id=" . $self->{DataSource}->ToSQL(
                            $self->{DataSource}->{position_id}->GetDBValue(),

$self->{DataSource}->{position_id}->{DataType}) . $Where,
                            $self->{DataSource}) > 0)
{
      $self->{position_id}->{Errors}->addError($CCSLocales->GetText
                       ('CCS_UniqueValue',
                        $self->{position_id}->{Caption}));
}
$Validation = ( $self->{search_in_all_cvs}->Validate() && $Validation
) ? 1 : 0; # Line 216
$Validation = ( $self->{search_in_position}->Validate() && $Validation
) ? 1 : 0;

Only the CCDLookUp ends up with calling binary module (DBD::InterBase)

How can I debug this to see which variable has a problem (it seems
line 216 does not tries to destroy a scalar) ?

The program itself seems to run ok although the reported error

Thanks

Roey

I works with ActivePerl 5.8.8 build 817


More information about the Perl mailing list