summary refs log tree commit
path: root/lib/rack/multipart/parser.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rack/multipart/parser.rb')
-rw-r--r--lib/rack/multipart/parser.rb3
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/rack/multipart/parser.rb b/lib/rack/multipart/parser.rb
index 22d38e74..0cbd3732 100644
--- a/lib/rack/multipart/parser.rb
+++ b/lib/rack/multipart/parser.rb
@@ -6,7 +6,6 @@ module Rack
 
     class Parser
       BUFSIZE = 16384
-
       DUMMY = Struct.new(:parse).new
 
       def self.create(env)
@@ -19,7 +18,7 @@ module Rack
         content_length = content_length.to_i if content_length
 
         tempfile = env['rack.multipart.tempfile_factory'] ||
-          lambda { |filename, content_type| Tempfile.new(["RackMultipart", ::File.extname(filename)]) }
+          lambda { |filename, content_type| Tempfile.new(["RackMultipart", ::File.extname(filename.gsub("\0".freeze, '%00'.freeze))]) }
         bufsize = env['rack.multipart.buffer_size'] || BUFSIZE
 
         new($1, io, content_length, env, tempfile, bufsize)