diff -ur rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eee.pas rubyscript2exe-0.1.15.tar.gz/rubyscript2exe/eee.pas --- rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eee.pas 2004-05-02 23:56:22.000000000 +0200 +++ rubyscript2exe-0.1.15.tar.gz/rubyscript2exe/eee.pas 2004-05-14 22:48:30.000000000 +0200 @@ -70,7 +70,7 @@ assign(f, sr.name); erase(f); if (ioresult <> 0) then begin - writeln(´Couldn´´t delete file ´ + sr.name); + // writeln(´Couldn´´t delete file ´ + sr.name); end; {$I+} @@ -85,7 +85,7 @@ {$I-} rmdir(path + ´\´); if (ioresult <> 0) then begin - writeln(´Couldn´´t delete directory ´ + path + ´ (Known Error).´); + // writeln(´Couldn´´t delete directory ´ + path + ´ (Known Error).´); end; {$I+} @@ -116,10 +116,10 @@ begin - c := trunc(inlength/sizeof(b)); + c := trunc(inlength div sizeof(b)); while (c >= 0) do begin - if (c = 0) then l := inlength-(trunc(inlength/sizeof(b))*sizeof(b)) + if (c = 0) then l := inlength-(trunc(inlength div sizeof(b))*sizeof(b)) else l := sizeof(b); blockread(infile, b, l, n); @@ -140,10 +140,10 @@ begin - c := trunc(inlength/sizeof(b)); + c := trunc(inlength div sizeof(b)); while (c >= 0) do begin - if (c = 0) then l := inlength-(trunc(inlength/sizeof(b))*sizeof(b)) + if (c = 0) then l := inlength-(trunc(inlength div sizeof(b))*sizeof(b)) else l := sizeof(b); blockread(infile, b, l, n); @@ -317,31 +317,26 @@ begin - randomize; - - workdir := paramstr(0); - workdir := copy(workdir, 1, length(workdir)-4); - - {$I-} - mkdir(workdir); - if (ioresult = 183) then begin - writeln(´Can´´t create ´, workdir, ´.´); - end; - {$I-} - assign(infile, paramstr(0)); reset(infile, 1); - blockeat(infile, t.length); + + assign(outfile, ´eee.exe´); + rewrite(outfile); + blockcopy(infile, outfile, t.length, false); + close(outfile); + + assign(eeefile, ´app.eee´); + rewrite(eeefile); try for teller := 1 to t.number do begin blockread(infile, h, sizeof(h)); - writeln(h.klasse, ´ ´, h.tekst); + writeln(eeefile, h.klasse, ´ ´, h.tekst); if (h.klasse = ´f´) then begin - assign(outfile, workdir + ´\´ + h.tekst); + assign(outfile, h.tekst); rewrite(outfile, 1); blockcopy(infile, outfile, h.length, true); @@ -352,6 +347,8 @@ finally + close(eeefile); + close(infile); end; diff -ur rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/ev/ftools.rb rubyscript2exe-0.1.15.tar.gz/rubyscript2exe/ev/ftools.rb --- rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/ev/ftools.rb 2004-05-04 22:17:23.000000000 +0200 +++ rubyscript2exe-0.1.15.tar.gz/rubyscript2exe/ev/ftools.rb 2004-05-15 11:59:12.000000000 +0200 @@ -7,7 +7,7 @@ end if FileTest.directory?(entry) - pdir = Dir.pwd + pdir = Dir.pwd Dir.chdir(entry) Dir.new(".").each do |e| @@ -18,4 +18,42 @@ Dir.rmdir(entry) end end + + def self.rollbackup(file) + backupfile = file + ".RB.BACKUP" + controlfile = file + ".RB.CONTROL" + + File.touch(file) unless File.file?(file) + + # Rollback + + if File.file?(backupfile) and File.file?(controlfile) + $stdout.puts "Restoring #{file}..." + + File.copy(backupfile, file) # Rollback from fase 3 + end + + # Reset + + File.delete(backupfile) if File.file?(backupfile) # Reset from fase 2 or 3 + File.delete(controlfile) if File.file?(controlfile) # Reset from fase 3 or 4 + + # Backup + + File.copy(file, backupfile) # Enter fase 2 + File.touch(controlfile) # Enter fase 3 + + # The real thing + + yield if block_given? + + # Cleanup + + File.delete(backupfile) # Enter fase 4 + File.delete(controlfile) # Enter fase 5 + end + + def self.touch(file) + File.open(file, "a"){|f|} + end end Binary files rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eee.exe and rubyscript2exe-0.1.15.tar.gz/rubyscript2exe/eee.exe differ Binary files rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eeew.exe and rubyscript2exe-0.1.15.tar.gz/rubyscript2exe/eeew.exe differ