diff -ur rubywebdialogs-0.0.6.tar.gz/rubywebdialogs/lib/net.lib.rb rubywebdialogs-0.0.7.tar.gz/rubywebdialogs/lib/net.lib.rb
--- rubywebdialogs-0.0.6.tar.gz/rubywebdialogs/lib/net.lib.rb	2004-04-24 18:43:46.000000000 +0200
+++ rubywebdialogs-0.0.7.tar.gz/rubywebdialogs/lib/net.lib.rb	2004-04-28 21:41:23.000000000 +0200
@@ -211,7 +211,7 @@
         res		= io.read
         header, data	= nil, nil
         header, data	= res.split(/\r*\n\r*\n/, 2)	if not res.nil?
-        header	= Header.new(header)
+        header		= Header.new(header)
 
         if recursive and header.header["location"] != uri.to_s
           uri	= EVURI.new(uri) + header.header["location"]
@@ -479,8 +479,8 @@
 
           req	= Request.new(io)
           resp	= Response.new(io)
-        rescue NameError
-          puts "Getting request from browser failed."
+        rescue NameError, StandardError => e
+          puts "Getting request from browser failed. (%s)" % e.class.to_s
           io	= nil
         end
 
@@ -502,7 +502,7 @@
 
 	    begin
 	      resp.flush
-	    rescue
+            rescue NameError, StandardError
 	    end
           #end
 	end
diff -ur rubywebdialogs-0.0.6.tar.gz/rubywebdialogs/lib/rwd.lib.rb rubywebdialogs-0.0.7.tar.gz/rubywebdialogs/lib/rwd.lib.rb
--- rubywebdialogs-0.0.6.tar.gz/rubywebdialogs/lib/rwd.lib.rb	2004-04-24 18:43:46.000000000 +0200
+++ rubywebdialogs-0.0.7.tar.gz/rubywebdialogs/lib/rwd.lib.rb	2004-04-28 21:41:23.000000000 +0200
@@ -40,8 +40,10 @@
 else
   begin
     puts "Looking for default browser..."
-    ENV["RWDBROWSER"]	= Win32::Registry::HKEY_CLASSES_ROOT.open(´htmlfile\shell\open\command´)[0]
-  rescue
+    Win32::Registry::HKEY_CLASSES_ROOT.open(´htmlfile\shell\open\command´) do |reg|
+      ENV["RWDBROWSER"]	= reg[""]
+    end
+  rescue NameError
     puts "Not found."
   end
 
@@ -319,13 +321,17 @@
     when "row"		then res.concat "<tr #{align} #{valign}>"
     when "hidden"	then res.concat "<p #{align}><input name=´#{@args["name"]}´ value=´#{value}´ type=´hidden´>"
     when "text"
-      res.concat "<p #{align}><input name=´#{@args["name"]}´ value=´#{value}´ type=´text´>"
+      maxlength	= ""
+      maxlength	= "maxlength=´%s´" % @args["maxlength"]	if @args.include?("maxlength")
+      res.concat "<p #{align}><input name=´#{@args["name"]}´ value=´#{value}´ type=´text´ #{maxlength}>"
       oneormorefields	<< "true"
     when "textarea"
       res.concat "<p #{align}><textarea name=´#{@args["name"]}´>#{value}</textarea>"
       oneormorefields	<< "true"
     when "password"
-      res.concat "<p #{align}><input name=´#{@args["name"]}´ value=´#{value}´ type=´password´>"
+      maxlength	= ""
+      maxlength	= "maxlength=´%s´" % @args["maxlength"]	if @args.include?("maxlength")
+      res.concat "<p #{align}><input name=´#{@args["name"]}´ value=´#{value}´ type=´password´ #{maxlength}>"
       oneormorefields	<< "true"
     when "checkbox"
       if vars[@args["name"]] == "on"
@@ -996,7 +1002,7 @@
           end
 
           if oldsessionid.nil? or oldsessionid.empty?
-            if not auth.nil? and not session.authenticated
+            if not auth.nil? and not auth.empty? and not session.authenticated
 
 		  # Check authentication