Skip to content
This repository has been archived by the owner on Apr 12, 2022. It is now read-only.

cgi.rb でアップロードファイルと同じサイズのメモリを使用する #1

Open
tmtm opened this issue Jul 6, 2010 · 0 comments

Comments

@tmtm
Copy link

tmtm commented Jul 6, 2010

mod_ruby で cgi.rb を使用すると、CGI.new 時にアップロードしたファイルと同じサイズのメモリを使用してしまいます。
request.c の read_client_block() で、apr_palloc() でメモリを獲得していますが、これがアップロードファイルを全部読むまで繰り返し呼ばれるため、結果としてアップロードファイルと同じサイズのメモリが獲得されてしまいます。
apr_palloc() で獲得したメモリ buf は rb_str_cat() 後は不要なため、apr_palloc() ではなくて、この関数内で malloc() & free() した方がいいのではないかと思うのですが、いかがでしょうか。

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant