Diff for /loncom/LONCAPA.pm between versions 1.11 and 1.13.2.1

version 1.11, 2006/06/27 21:47:15 version 1.13.2.1, 2006/10/13 19:11:05
Line 40  my $loncapa_max_wait_time = 13; Line 40  my $loncapa_max_wait_time = 13;
   
 require Exporter;  require Exporter;
 our @ISA = qw (Exporter);  our @ISA = qw (Exporter);
 our @EXPORT = qw(&escape_LaTeX &add_get_param &escape &unescape &tie_domain_hash &untie_domain_hash &tie_user_hash &untie_user_hash &propath);  our @EXPORT = qw(&add_get_param &escape &unescape &tie_domain_hash &untie_domain_hash &tie_user_hash &untie_user_hash &propath);
 my %perlvar;  my %perlvar;
   
 # Escape a LaTeX string of special characters that according to LaTeX line by line  
 # pg 9 are: # $ % & \ ^ _ { } ~  These are escaped by prepending a \  
 #  
 sub escape_LaTeX {  
     my ($string) = @_;  
     $string =~ s/[\#\$\%\&\\^_{}]/\\$&/g;  
     return $string;  
 }  
   
   
 # Inputs are a url, and a hash ref of  # Inputs are a url, and a hash ref of
Line 277  sub _do_hash_untie { Line 269  sub _do_hash_untie {
        return undef;          return undef; 
    }      } 
 # If this is compressed, we will actually need an exclusive lock  # If this is compressed, we will actually need an exclusive lock
    if (-e "$file_prefix.db.gz") {     if (-e "$file_prefix.db.gz"
          || !-e "$file_prefix.db.old" ) {
        if (!&flock_sym(LOCK_EX)) {         if (!&flock_sym(LOCK_EX)) {
    &clean_sym();     &clean_sym();
    return undef;     return undef;
Line 302  sub _do_hash_untie { Line 295  sub _do_hash_untie {
        system("gunzip $file_prefix.hist.gz");         system("gunzip $file_prefix.hist.gz");
    }     }
        }         }
          if (!-e "$file_prefix.db.old") {
              my $dump_db = '/home/httpd/perl/debug/dump_db_static_32';
      my $create_db = '/home/httpd/perl/debug/create_db_dynamic_64';
              my $file = "$file_prefix.db";
              &main::logthis("Converting $file");
              if (!-x $dump_db) {
          &clean_symb();
          &main::logthis("$dump_db unexecutable");
          return;
      }
              if (!-x $create_db) {
          &clean_symb();
          &main::logthis("$create_db unexecutable");
          return;
      }
      system("$dump_db -f $file|$create_db -f $file.new");
      if (!-e "$file.new") {
          &clean_symb();
          &main::logthis("conversion faile $file.new doesn't exist");
          return;
      }
              rename($file,"$file.old");
      rename("$file.new","$file");
          }
 # Change access mode to non-blocking  # Change access mode to non-blocking
        $how=$how|&GDBM_NOLOCK();         $how=$how|&GDBM_NOLOCK();
 # Go ahead and tie the hash  # Go ahead and tie the hash
        return &_do_hash_tie($file_prefix,$namespace,$how,$loghead,$what);        my $result = 
       &_do_hash_tie($file_prefix,$namespace,$how,$loghead,$what);
    if (!$result) {
       &clean_sym();
    }
    return $result;
     }      }
   
     sub flock_sym {      sub flock_sym {

Removed from v.1.11  
changed lines
  Added in v.1.13.2.1


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