projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
1. cluster seems to have a memory leak, put DESTROY functions in where
[spider.git]
/
perl
/
DXLog.pm
diff --git
a/perl/DXLog.pm
b/perl/DXLog.pm
index dde723027f5b237afd735c4452eeafd1b7a42a02..f089d73d0cecc28058bfd975eaf47df79d207ab5 100644
(file)
--- a/
perl/DXLog.pm
+++ b/
perl/DXLog.pm
@@
-27,7
+27,7
@@
package DXLog;
require Exporter;
@ISA = qw(Exporter);
require Exporter;
@ISA = qw(Exporter);
-@EXPORT = qw(Log);
+@EXPORT = qw(Log
Logclose
);
use FileHandle;
use DXVars;
use FileHandle;
use DXVars;
@@
-75,7
+75,7
@@
sub open
$mode = 'r' if !$mode;
$self->{mode} = $mode;
$mode = 'r' if !$mode;
$self->{mode} = $mode;
- my $fh = new FileHandle $self->{fn}, $mode;
+ my $fh = new FileHandle $self->{fn}, $mode
, 0666
;
return undef if !$fh;
$fh->autoflush(1) if $mode ne 'r'; # make it autoflushing if writable
$self->{fh} = $fh;
return undef if !$fh;
$fh->autoflush(1) if $mode ne 'r'; # make it autoflushing if writable
$self->{fh} = $fh;
@@
-161,7
+161,14
@@
sub close
{
my $self = shift;
undef $self->{fh}; # close the filehandle
{
my $self = shift;
undef $self->{fh}; # close the filehandle
- delete $self->{fh};
+ delete $self->{fh};
+}
+
+sub DESTROY
+{
+ my $self = shift;
+ undef $self->{fh}; # close the filehandle
+ delete $self->{fh} if $self->{fh};
}
# log something in the system log
}
# log something in the system log
@@
-174,10
+181,8
@@
sub Log
$log->writeunix($t, join('^', $t, @_) );
}
$log->writeunix($t, join('^', $t, @_) );
}
-sub
DESTROY # catch undefs and do what is required further down the tre
e
+sub
Logclos
e
{
{
- my $self = shift;
- DXDebug::dbg("dxlog", "closing $self->{fn}\n");
- undef $self->{fh} if defined $self->{fh};
-}
+ $log->close();
+}
1;
1;