diff -ur allinoneruby-0.2.8.tar.gz/allinoneruby/CHANGELOG allinoneruby-0.2.9.tar.gz/allinoneruby/CHANGELOG
--- allinoneruby-0.2.8.tar.gz/allinoneruby/CHANGELOG	2005-12-03 15:17:13.000000000 +0100
+++ allinoneruby-0.2.9.tar.gz/allinoneruby/CHANGELOG	2006-03-08 17:56:09.000000000 +0100
@@ -1,5 +1,16 @@
 ----------------------------------------------------------------
 
+0.2.9 - 08.03.2006
+
+* Fixed a bug concerning parameters with quotes and other
+  escapable characters.
+
+* Fixed a bug concerning spaced parameters on Linux and Darwin.
+
+* AllInOneRuby and RubyScript2Exe now work together.
+
+----------------------------------------------------------------
+
 0.2.8 - 03.12.2005
 
 * Fixed a bug concerning multiline parameters.
diff -ur allinoneruby-0.2.8.tar.gz/allinoneruby/ev/dependencies.rb allinoneruby-0.2.9.tar.gz/allinoneruby/ev/dependencies.rb
--- allinoneruby-0.2.8.tar.gz/allinoneruby/ev/dependencies.rb	2005-12-03 15:17:55.000000000 +0100
+++ allinoneruby-0.2.9.tar.gz/allinoneruby/ev/dependencies.rb	2006-03-08 18:28:57.000000000 +0100
@@ -1,27 +1,47 @@
-def dlls(file, path=File.dirname(file))
+def dlls(file)
 
-	# Only the dependencies in the same directory as the executable or the given directory.
+	# Only the dependencies in the same directory as the executable or any non-Windows directory in %PATH%.
 
   todo		= []
   res		= []
 
   todo << File.expand_path(file)
 
+  paden	= ENV["PATH"].split(/;/)
+  paden	= ENV["PATH"].split(/:/)	if paden.length == 1
+
+  paden << File.dirname(file)
+
+  windir1	= (ENV["WINDIR"] || "").gsub(/\\/, "/").downcase
+  drive		= windir1.scan(/^(.):/).shift.shift
+  windir2	= windir1.sub(/^#{drive}:/, "/cygdrive/#{drive.downcase}")
+
+  paden	= paden.collect{|pad| pad.gsub(/\\/, "/").downcase}
+  paden	= paden.select{|pad| pad.downcase}
+  paden	= paden.reject{|pad| pad =~ /^#{windir1}/}
+  paden	= paden.reject{|pad| pad =~ /^#{windir2}/}
+
   while todo.length > 0
     todo2	= todo
     todo	= []
 
     todo2.each do |file|
       File.open(file, "rb") do |f|
-        strings	= f.read.scan(/[\w\-\.]+/)	# Hack ???
-        strings.delete_if{|s| s !~ /\.(so|o|dll)$/i}
-
-        strings.each do |lib|
-          lib	= File.expand_path(lib, path)
-
-          if not lib.nil? and File.file?(lib) and not res.include?(lib)
-            todo << lib
-            res << lib
+        while (line = f.gets)
+          strings	= line.scan(/[\w\-\.]+/)	# Hack ???
+          strings	= strings.reject{|s| s !~ /\.(so|o|dll)$/i}
+
+          strings.each do |lib|
+            pad	= paden.find{|pad| File.file?(File.expand_path(lib, pad))}
+
+            unless pad.nil?
+              lib	= File.expand_path(lib, pad)
+
+              if File.file?(lib) and not res.include?(lib)
+                todo << lib
+                res << lib
+              end
+            end
           end
         end
       end
@@ -70,7 +90,7 @@
   lsb_ia32	= ["libm.so.6", "libdl.so.2", "libcrypt.so.1", "libc.so.6", "libpthread.so.0", "ld-lsb.so.1"]
   lsb		= lsb_common + lsb_ia32
 
-  res.delete_if{|s| lsb.include?(File.basename(s))}	if notthedefaults
+  res.reject!{|s| lsb.include?(File.basename(s))}	if notthedefaults
 
   res
 end
diff -ur allinoneruby-0.2.8.tar.gz/allinoneruby/ev/ftools.rb allinoneruby-0.2.9.tar.gz/allinoneruby/ev/ftools.rb
--- allinoneruby-0.2.8.tar.gz/allinoneruby/ev/ftools.rb	2005-12-03 15:17:55.000000000 +0100
+++ allinoneruby-0.2.9.tar.gz/allinoneruby/ev/ftools.rb	2006-03-08 18:28:57.000000000 +0100
@@ -9,8 +9,10 @@
       File.mkpath(todir)
 
       Dir.chdir(from)
-        Dir.new(".").each do |e|
-          Dir.copy(e, todir+"/"+e)	if not [".", ".."].include?(e)
+        Dir.open(".") do |dir|
+          dir.each do |e|
+            Dir.copy(e, todir+"/"+e)	if not [".", ".."].include?(e)
+          end
         end
       Dir.chdir(pdir)
     else
@@ -28,14 +30,19 @@
   end
 
   def self.rm_rf(entry)
-    File.chmod(0755, entry)
+    begin
+      File.chmod(0755, entry)
+    rescue
+    end
 
     if File.ftype(entry) == "directory"
       pdir	= Dir.pwd
 
       Dir.chdir(entry)
-        Dir.new(".").each do |e|
-          Dir.rm_rf(e)	if not [".", ".."].include?(e)
+        Dir.open(".") do |dir|
+          dir.each do |e|
+            Dir.rm_rf(e)	if not [".", ".."].include?(e)
+          end
         end
       Dir.chdir(pdir)
 
@@ -71,8 +78,10 @@
         Dir.chdir(entry)
 
         begin
-          Dir.new(".").each do |e|
-            res += Dir.find(e, mask).collect{|e| entry+"/"+e}	unless [".", ".."].include?(e)
+          Dir.open(".") do |dir|
+            dir.each do |e|
+              res += Dir.find(e, mask).collect{|e| entry+"/"+e}	unless [".", ".."].include?(e)
+            end
           end
         ensure
           Dir.chdir(pdir)
@@ -159,10 +168,12 @@
     catch :stop do
       ENV["PATH"].split(/#{sep}/).reverse.each do |d|
         if File.directory?(d)
-          Dir.new(d).each do |e|
-             if (linux? and e == file) or (windows? and e.downcase == file.downcase)
-               res	= File.expand_path(e, d)
-               throw :stop
+          Dir.open(d) do |dir|
+            dir.each do |e|
+              if (linux? and e == file) or (windows? and e.downcase == file.downcase)
+                res	= File.expand_path(e, d)
+                throw :stop
+              end
             end
           end
         end
@@ -171,4 +182,35 @@
 
     res
   end
+
+  def self.same_content?(file1, file2, blocksize=4096)
+    res	= false
+
+    if File.file?(file1) and File.file?(file2)
+      res	= true
+
+      data1	= nil
+      data2	= nil
+
+      File.open(file1, "rb") do |f1|
+        File.open(file2, "rb") do |f2|
+          catch :not_the_same do
+            while (data1 = f1.read(blocksize))
+              data2	= f2.read(blocksize)
+
+              unless data1 == data2
+                res	= false
+
+                throw :not_the_same
+              end
+            end
+
+            res	= false	if f2.read(blocksize)
+          end
+        end
+      end
+    end
+
+    res
+  end
 end
diff -ur allinoneruby-0.2.8.tar.gz/allinoneruby/ev/oldandnewlocation.rb allinoneruby-0.2.9.tar.gz/allinoneruby/ev/oldandnewlocation.rb
--- allinoneruby-0.2.8.tar.gz/allinoneruby/ev/oldandnewlocation.rb	2005-12-03 15:17:55.000000000 +0100
+++ allinoneruby-0.2.9.tar.gz/allinoneruby/ev/oldandnewlocation.rb	2006-03-08 18:28:57.000000000 +0100
@@ -14,8 +14,10 @@
       pdir	= Dir.pwd
 
       Dir.chdir(entry)
-        Dir.new(".").each do |e|
-          Dir.rm_rf(e)	if not [".", ".."].include?(e)
+        Dir.open(".") do |dir|
+          dir.each do |e|
+            Dir.rm_rf(e)	if not [".", ".."].include?(e)
+          end
         end
       Dir.chdir(pdir)
 
diff -ur allinoneruby-0.2.8.tar.gz/allinoneruby/init.rb allinoneruby-0.2.9.tar.gz/allinoneruby/init.rb
--- allinoneruby-0.2.8.tar.gz/allinoneruby/init.rb	2005-12-03 15:15:22.000000000 +0100
+++ allinoneruby-0.2.9.tar.gz/allinoneruby/init.rb	2006-02-04 01:22:51.000000000 +0100
@@ -100,8 +100,8 @@
 copyto(rubywexe, bindir2)	if windows? or cygwin?	if File.file?(rubyexe)
 copyto(dlls(rubyexe), bindir2)	if windows? or cygwin?
 
-copyto(Dir.find(libdir2, /\.(so|o|dll)$/i).collect{|file| ldds(file)}, bindir2)			if linux? or darwin?
-copyto(Dir.find(libdir2, /\.(so|o|dll)$/i).collect{|file| dlls(file, bindir1)}, bindir2)	if windows? or cygwin?
+copyto(Dir.find(libdir2, /\.(so|o|dll)$/i).collect{|file| ldds(file)}, bindir2)	if linux? or darwin?
+copyto(Dir.find(libdir2, /\.(so|o|dll)$/i).collect{|file| dlls(file)}, bindir2)	if windows? or cygwin?
 
 if STRIP and (linux? or darwin?)
   $stderr.puts "Stripping..."	unless QUIET
@@ -152,8 +152,19 @@
   f.puts "    k.gsub!(/^EEE_/, 'ALLINONERUBY_')"
   f.puts "    eval('%s=%s' % [k, v.inspect])"
   f.puts "  end"
+  f.puts "  ARGV.concat(ALLINONERUBY_PARMSLIST.split(/\000/))"
   f.puts "end"
 
+  f.puts "# Fake Config"
+
+  #f.puts "module Config"
+  #f.puts "  DESTDIR = ALLINONERUBY_TEMPDIR"
+  #f.puts "end"
+
+  f.puts "require 'rbconfig'"
+  f.puts "Config::CONFIG['bindir'] = File.join(ALLINONERUBY_TEMPDIR, 'bin')"
+  f.puts "Config::CONFIG['libdir'] = File.join(ALLINONERUBY_TEMPDIR, 'lib')"
+
   f.puts "# Start the application"
 
   f.puts "ALLINONERUBY	= '#{rubyexe}'"
@@ -184,13 +195,13 @@
   f.puts "i eee.info"
 
   if linux?
-    f.puts "c PATH=%tempdir%/bin:$PATH ; export LD_LIBRARY_PATH=%tempdir%/bin:$LD_LIBRARY_PATH ; chmod +x %tempdir%/bin/* ; %tempdir%/bin/#{rubyexe} -r %tempdir%/bootstrap.rb -T %tempdir%/empty.rb %quotedparms%"
+    f.puts "c PATH=%tempdir%/bin:$PATH ; export LD_LIBRARY_PATH=%tempdir%/bin:$LD_LIBRARY_PATH ; chmod +x %tempdir%/bin/* ; %tempdir%/bin/#{rubyexe} -r %tempdir%/bootstrap.rb -T1 %tempdir%/empty.rb"
   elsif darwin?
-    f.puts "c PATH=%tempdir%/bin:$PATH ; export DYLD_LIBRARY_PATH=%tempdir%/bin:$DYLD_LIBRARY_PATH ; chmod +x %tempdir%/bin/* ; %tempdir%/bin/#{rubyexe} -r %tempdir%/bootstrap.rb -T %tempdir%/empty.rb %quotedparms%"
+    f.puts "c PATH=%tempdir%/bin:$PATH ; export DYLD_LIBRARY_PATH=%tempdir%/bin:$DYLD_LIBRARY_PATH ; chmod +x %tempdir%/bin/* ; %tempdir%/bin/#{rubyexe} -r %tempdir%/bootstrap.rb -T1 %tempdir%/empty.rb"
   elsif cygwin?
-    f.puts "c %tempdir%\\bin\\#{rubyexe} -r %tempdir1%/bootstrap.rb -T1 %tempdir1%/empty.rb %quotedparms%"
+    f.puts "c %tempdir%\\bin\\#{rubyexe} -r %tempdir1%/bootstrap.rb -T1 %tempdir1%/empty.rb"
   else
-    f.puts "c %tempdir%\\bin\\#{rubyexe} -r %tempdir%\\bootstrap.rb -T1 %tempdir%\\empty.rb %quotedparms%"
+    f.puts "c %tempdir%\\bin\\#{rubyexe} -r %tempdir%\\bootstrap.rb -T1 %tempdir%\\empty.rb"
   end
 end
 
diff -ur allinoneruby-0.2.8.tar.gz/allinoneruby/VERSION allinoneruby-0.2.9.tar.gz/allinoneruby/VERSION
--- allinoneruby-0.2.8.tar.gz/allinoneruby/VERSION	2005-12-03 15:17:55.000000000 +0100
+++ allinoneruby-0.2.9.tar.gz/allinoneruby/VERSION	2006-03-08 18:28:57.000000000 +0100
@@ -1 +1 @@
-0.2.8
+0.2.9
Binary files allinoneruby-0.2.8.tar.gz/allinoneruby/eee.exe and allinoneruby-0.2.9.tar.gz/allinoneruby/eee.exe differ
Binary files allinoneruby-0.2.8.tar.gz/allinoneruby/eee_linux and allinoneruby-0.2.9.tar.gz/allinoneruby/eee_linux differ
Binary files allinoneruby-0.2.8.tar.gz/allinoneruby/eeew.exe and allinoneruby-0.2.9.tar.gz/allinoneruby/eeew.exe differ