mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* error.c (report_bug): use a small message buffer instead of BUFSIZ.
It is needed for avoiding nested SIGSEGV on Linux. Note: BUFSIZ is not proper buffer size. It's unrelated with maximum filename length. :-/ [Bug #5139] [ruby-dev:44315] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
1c647cc203
commit
3abbda4f6e
2 changed files with 11 additions and 2 deletions
|
@ -1,3 +1,11 @@
|
|||
Thu Aug 4 20:19:11 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
|
||||
|
||||
* error.c (report_bug): use a small message buffer instead of BUFSIZ.
|
||||
It is needed for avoiding nested SIGSEGV on Linux.
|
||||
Note: BUFSIZ is not proper buffer size. It's unrelated with maximum
|
||||
filename length. :-/
|
||||
[Bug #5139] [ruby-dev:44315]
|
||||
|
||||
Thu Aug 4 16:08:45 2011 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* tool/rbinstall.rb (gem): install all gemspecs under lib and ext.
|
||||
|
|
5
error.c
5
error.c
|
@ -251,9 +251,10 @@ rb_warn_m(int argc, VALUE *argv, VALUE exc)
|
|||
static void
|
||||
report_bug(const char *file, int line, const char *fmt, va_list args)
|
||||
{
|
||||
char buf[BUFSIZ];
|
||||
/* SIGSEGV handler might have a very small stack. Thus we need to use it carefully. */
|
||||
char buf[256];
|
||||
FILE *out = stderr;
|
||||
int len = err_position_0(buf, BUFSIZ, file, line);
|
||||
int len = err_position_0(buf, 256, file, line);
|
||||
|
||||
if ((ssize_t)fwrite(buf, 1, len, out) == (ssize_t)len ||
|
||||
(ssize_t)fwrite(buf, 1, len, (out = stdout)) == (ssize_t)len) {
|
||||
|
|
Loading…
Reference in a new issue