From: Graham B. <gb...@us...> - 2002-01-31 13:32:28
|
Update of /cvsroot/perl-ldap/ldap/lib/Net/LDAP In directory usw-pr-cvs1:/tmp/cvs-serv19358/lib/Net/LDAP Modified Files: LDIF.pm Log Message: Fix the \n output when the output is to a terminal or a pipe Index: LDIF.pm =================================================================== RCS file: /cvsroot/perl-ldap/ldap/lib/Net/LDAP/LDIF.pm,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- LDIF.pm 2001/10/29 16:48:12 1.13 +++ LDIF.pm 2002/01/31 13:32:25 1.14 @@ -9,7 +9,7 @@ require Net::LDAP::Entry; use vars qw($VERSION); -$VERSION = "0.09"; +$VERSION = "0.10"; my %mode = qw(w > r < a >>); @@ -60,6 +60,7 @@ file => "$file", opened_fh => $opened_fh, eof => 0, + write_count => ($mode eq 'a' and tell($fh) > 0) ? 1 : 0, }; bless $self, $pkg; @@ -356,7 +357,7 @@ # Skip entry if there is nothing to write next if $type eq 'modify' and !@changes; - print "\n" if tell($self->{'fh'}); + print "\n" if $self->{write_count}++; _write_dn($entry->dn,$self->{'encode'},$wrap); print "changetype: $type\n"; @@ -394,9 +395,9 @@ } else { - print "\n" if tell($self->{'fh'}); - _write_dn($entry->dn,$self->{'encode'},$wrap); - _write_attrs($entry,$wrap,$lower); + print "\n" if $self->{write_count}++; + _write_dn($entry->dn,$self->{'encode'},$wrap); + _write_attrs($entry,$wrap,$lower); } } |