diff -ur rubyscript2exe-0.1.13.tar.gz/rubyscript2exe/eee.pas rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eee.pas
--- rubyscript2exe-0.1.13.tar.gz/rubyscript2exe/eee.pas	2004-04-28 22:24:04.000000000 +0200
+++ rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eee.pas	2004-05-02 23:56:22.000000000 +0200
@@ -2,7 +2,7 @@
 
 uses
 
-  Dos;
+  SysUtils, Dos;
 
 type
 
@@ -27,16 +27,17 @@
   outfile	: file of byte;
   eeefile	: Text;
   klasse	: string[1];
-  tekst		: string[255];
+  tekst1	: string[255];
+  tekst2	: string;
   s		: string[255];
-  c		: string[255];
-  p		: string[255];
+  c		: string;
+  p		: string;
   h		: header;
   t		: tail;
   teller	: longint;
   i		: longint;
   dir		: string[255];
-  parms		: string[255];
+  parms		: string;
   justextract	: boolean;
 
 
@@ -46,15 +47,19 @@
   f		: file;
   sr		: searchrec;
   dir		: string[255];
+  attr		: word;
 
 begin
 
   getdir(0, dir);
   chdir(path);
 
-  findfirst(´*.*´, directory, sr);
+  findfirst(´*.*´, anyfile or directory, sr);
   while(doserror = 0) do begin
-    if (sr.attr and directory > 0) then begin
+    assign(f, sr.name);		// Foutje in 1.9.2 ???
+    getfattr(f, attr);		// Foutje in 1.9.2 ???
+
+    if (attr and directory > 0) then begin
       if ((not (sr.name = ´.´)) and (not (sr.name = ´..´))) then begin
         recursivedelete(sr.name);
       end;
@@ -177,13 +182,13 @@
 
       if (not (s = ´´) and not (copy(s, 1, 1) = ´#´)) then begin
         klasse	:= copy(s, 1, 1);
-        tekst	:= copy(s, 3, 255);
+        tekst1	:= copy(s, 3, length(s)-2);
 
         // writeln(h.klasse, ´ ´, h.tekst);
 
         if (klasse = ´f´) then begin
           h.klasse	:= klasse;
-          h.tekst	:= tekst;
+          h.tekst	:= tekst1;
 
           assign(infile, h.tekst);
           reset(infile, 1);
@@ -195,7 +200,7 @@
 
         if (klasse = ´c´) then begin
           h.klasse	:= klasse;
-          h.tekst	:= tekst;
+          h.tekst	:= tekst1;
           h.length	:= 0;
 
           blockwrite(outfile, h, sizeof(h));
@@ -203,7 +208,7 @@
 
         if (klasse = ´t´) then begin
           h.klasse	:= klasse;
-          h.tekst	:= tekst;
+          h.tekst	:= tekst1;
           h.length	:= 0;
 
           blockwrite(outfile, h, sizeof(h));
@@ -252,24 +257,26 @@
       for teller := 1 to t.number do begin
         blockread(infile, h, sizeof(h));
 
+        tekst2		:= h.tekst;
+
         s		:= ´%tempdir%´;
-        i		:= pos(s, h.tekst);
+        i		:= pos(s, tekst2);
         while (i > 0) do begin
-          h.tekst	:= copy(h.tekst, 1, i-1) + workdir + copy(h.tekst, i+length(s), 255);
-          i		:= pos(s, h.tekst);
+          tekst2	:= copy(tekst2, 1, i-1) + workdir + copy(tekst2, i+length(s), length(tekst2)-(i+length(s))+1);
+          i		:= pos(s, tekst2);
         end;
 
         s		:= ´%parms%´;
-        i		:= pos(s, h.tekst);
+        i		:= pos(s, tekst2);
         while (i > 0) do begin
-          h.tekst	:= copy(h.tekst, 1, i-1) + parms + copy(h.tekst, i+length(s), 255);
-          i		:= pos(s, h.tekst);
+          tekst2	:= copy(tekst2, 1, i-1) + parms + copy(tekst2, i+length(s), length(tekst2)-(i+length(s))+1);
+          i		:= pos(s, tekst2);
         end;
 
-        // writeln(h.klasse, ´ ´, h.tekst);
+        // writeln(h.klasse, ´ ´, tekst2);
 
         if (h.klasse = ´f´) then begin
-          assign(outfile, workdir + ´\´ + h.tekst);
+          assign(outfile, workdir + ´\´ + tekst2);
           rewrite(outfile, 1);
 
           blockcopy(infile, outfile, h.length, true);
@@ -278,19 +285,19 @@
         end;
 
         if (h.klasse = ´c´) then begin
-          i	:= pos(´ ´, h.tekst);
-          c	:= copy(h.tekst, 1, i-1);
-          p	:= copy(h.tekst, i+1, 255);
-          exec(c, p);
+          i	:= pos(´ ´, tekst2);
+          c	:= copy(tekst2, 1, i-1);
+          p	:= copy(tekst2, i+1, length(tekst2)-i);
+          executeprocess(c, p);
         end;
 
         if (h.klasse = ´t´) then begin
           getdir(0, dir);
           chdir(workdir);
-            i	:= pos(´ ´, h.tekst);
-            c	:= copy(h.tekst, 1, i-1);
-            p	:= copy(h.tekst, i+1, 255);
-            exec(c, p);
+            i	:= pos(´ ´, tekst2);
+            c	:= copy(tekst2, 1, i-1);
+            p	:= copy(tekst2, i+1, length(tekst2)-i);
+            executeprocess(c, p);
           chdir(dir);
         end;
       end;
Binary files rubyscript2exe-0.1.13.tar.gz/rubyscript2exe/eee.exe and rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eee.exe differ
Binary files rubyscript2exe-0.1.13.tar.gz/rubyscript2exe/eeew.exe and rubyscript2exe-0.1.14.tar.gz/rubyscript2exe/eeew.exe differ