Diff for /loncom/lonnet/perl/lonnet.pm between versions 1.778 and 1.780

version 1.778, 2006/09/05 20:42:15 version 1.780, 2006/09/15 07:55:05
Line 293  sub error { Line 293  sub error {
 }  }
   
 # ------------------------------------------- Transfer profile into environment  # ------------------------------------------- Transfer profile into environment
   my $env_loaded;
 sub transfer_profile_to_env {  sub transfer_profile_to_env {
       if ($env_loaded) { return; } 
   
     my ($lonidsdir,$handle)=@_;      my ($lonidsdir,$handle)=@_;
     if (!defined($lonidsdir)) {      if (!defined($lonidsdir)) {
  $lonidsdir = $perlvar{'lonIDsDir'};   $lonidsdir = $perlvar{'lonIDsDir'};
Line 325  sub transfer_profile_to_env { Line 327  sub transfer_profile_to_env {
         }          }
     }      }
     $env{'user.environment'} = "$lonidsdir/$handle.id";      $env{'user.environment'} = "$lonidsdir/$handle.id";
       $env_loaded=1;
     foreach my $expired_key (keys(%Remove)) {      foreach my $expired_key (keys(%Remove)) {
         &delenv($expired_key);          &delenv($expired_key);
     }      }
Line 344  sub appenv { Line 347  sub appenv {
             $env{$key}=$newenv{$key};              $env{$key}=$newenv{$key};
         }          }
     }      }
       foreach my $key (keys(%newenv)) {
    my $value = &escape($newenv{$key});
    delete($newenv{$key});
    $newenv{&escape($key)}=$value;
       }
   
     my $lockfh;      my $lockfh;
     unless (open($lockfh,"$env{'user.environment'}")) {      unless (open($lockfh,"$env{'user.environment'}")) {
Line 369  sub appenv { Line 377  sub appenv {
         chomp($oldenv[$i]);          chomp($oldenv[$i]);
         if ($oldenv[$i] ne '') {          if ($oldenv[$i] ne '') {
     my ($name,$value)=split(/=/,$oldenv[$i],2);      my ($name,$value)=split(/=/,$oldenv[$i],2);
     $name=&unescape($name);  
     $value=&unescape($value);  
     unless (defined($newenv{$name})) {      unless (defined($newenv{$name})) {
  $newenv{$name}=$value;   $newenv{$name}=$value;
     }      }
Line 383  sub appenv { Line 389  sub appenv {
  }   }
  my $newname;   my $newname;
  foreach $newname (keys %newenv) {   foreach $newname (keys %newenv) {
     print $fh &escape($newname).'='.&escape($newenv{$newname})."\n";      print $fh $newname.'='.$newenv{$newname}."\n";
  }   }
  close($fh);   close($fh);
     }      }
Line 891  sub save_cache { Line 897  sub save_cache {
     &purge_remembered();      &purge_remembered();
     #&Apache::loncommon::validate_page();      #&Apache::loncommon::validate_page();
     undef(%env);      undef(%env);
       undef($env_loaded);
 }  }
   
 my $to_remember=-1;  my $to_remember=-1;

Removed from v.1.778  
changed lines
  Added in v.1.780


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>