[#7809] uninit bug in yaml/emitter.c — "Pat Eyler" <rubypate@...>
During our hacking night, we also looked at an UNINIT bug in yaml/emitter.c
[#7813] :!~ not a symbol — noreply@...
Bugs item #4344, was opened at 2006-05-03 17:41
[#7818] (security-related) patch to ALLOC macros to prevent integer overflow bugs — "Dominique Brezinski" <dominique.brezinski@...>
While fixing the integer overflow in rb_ary_fill(), it occurred to me
[#7833] segfault on Proc#call after setting a trace_func — Mauricio Fernandez <mfp@...>
$ cat bug2.rb
[#7843] Possible YAMl bug in 1.8.4 — Damphyr <damphyr@...>
OK, while parsing the td2 data from the ruby-lang website we stumbled on
Its probably a bug. I'm not familiar with the specifics, but Ruby
[#7858] Ruby threads working with native threads — "Francis Cianfrocca" <garbagecat10@...>
I recently wrote a network-event extension for Ruby ("eventmachine" in
[#7865] Strange interactions between Struct and 'pp' — noreply@...
Bugs item #4457, was opened at 2006-05-12 17:13
[#7872] Nonblocking socket-connect — "Francis Cianfrocca" <garbagecat10@...>
All, I needed a nonblocking socket connect for my asynchronous-event
In article <3a94cf510605140559l7baa0205le341dac4f47d424b@mail.gmail.com>,
How about introducing the method Socket#set_nonblocking, or alternatively
Hi,
Well, it's ok then. I'm comfortable adding in the nonblocking
Hi,
How about Socket#nbconnect and Socket#nbaccept?
On 5/15/06, Francis Cianfrocca <garbagecat10@gmail.com> wrote:
In article <1147709691.180288.28647.nullmailer@x31.priv.netlab.jp>,
[#7881] Segfault on x86_64 when built with -O0 in CFLAGS — noreply@...
Bugs item #4491, was opened at 2006-05-16 12:46
[#7882] reproducible bug in DRb on OSX — cremes.devlist@...
I've been tearing my hair out the last few days trying to track down
[#7909] SCRIPT_LINES__ issue when loading a file more than once — Mauricio Fernandez <mfp@...>
SCRIPT_LINES__ is an obscure feature very few people care about, but I happen
On Fri, May 19, 2006 at 06:46:05PM +0900, Mauricio Fernandez wrote:
Hi,
[#7923] Nonblocking accept — "Francis Cianfrocca" <garbagecat10@...>
Thanks to the Matz and colleagues for adding the *_nonblock functions. They
[#7928] set_trace_func: binding has wrong self value for return events — =?ISO-8859-15?Q?Florian_Gro=DF?= <florgro@...>
Moin.
Florian Growrote:
Re: Coverity CID 14 15 Patch
>
>Comments suggestions welcome.
>
>Kevin Tew
>Index: regparse.c
>===================================================================
>RCS file: /src/ruby/regparse.c,v
>retrieving revision 1.25
>diff -u -r1.25 regparse.c
>--- regparse.c 23 Mar 2006 12:08:08 -0000 1.25
>+++ regparse.c 6 May 2006 16:58:46 -0000
>@@ -2152,38 +2152,41 @@
>pnum = popular_qualifier_num(p);
>cnum = popular_qualifier_num(c);
>
>- switch(ReduceTypeTable[cnum][pnum]) {
>- case RQ_DEL:
>- *p = *c;
>- break;
>- case RQ_A:
>- p->target = c->target;
>- p->lower = 0; p->upper = REPEAT_INFINITE; p->greedy = 1;
>- break;
>- case RQ_AQ:
>- p->target = c->target;
>- p->lower = 0; p->upper = REPEAT_INFINITE; p->greedy = 0;
>- break;
>- case RQ_QQ:
>- p->target = c->target;
>- p->lower = 0; p->upper = 1; p->greedy = 0;
>- break;
>- case RQ_P_QQ:
>- p->target = cnode;
>- p->lower = 0; p->upper = 1; p->greedy = 0;
>- c->lower = 1; c->upper = REPEAT_INFINITE; c->greedy = 1;
>- return ;
>- break;
>- case RQ_PQ_Q:
>- p->target = cnode;
>- p->lower = 0; p->upper = 1; p->greedy = 1;
>- c->lower = 1; c->upper = REPEAT_INFINITE; c->greedy = 0;
>- return ;
>- break;
>- case RQ_ASIS:
>- p->target = cnode;
>- return ;
>- break;
>+ if (pnum >= 0 && cnum >= 0 )
how about
if (pnum < 0 || cnum < 0)
return;
This way we don't have change identation. I think we could raise
some exception. It is always good for users to known that something does
not work.
>+ {
>+ switch(ReduceTypeTable[cnum][pnum]) {
>+ case RQ_DEL:
>+ *p = *c;
>+ break;
>+ case RQ_A:
>+ p->target = c->target;
>+ p->lower = 0; p->upper = REPEAT_INFINITE; p->greedy = 1;
>+ break;
>+ case RQ_AQ:
>+ p->target = c->target;
>+ p->lower = 0; p->upper = REPEAT_INFINITE; p->greedy = 0;
>+ break;
>+ case RQ_QQ:
>+ p->target = c->target;
>+ p->lower = 0; p->upper = 1; p->greedy = 0;
>+ break;
>+ case RQ_P_QQ:
>+ p->target = cnode;
>+ p->lower = 0; p->upper = 1; p->greedy = 0;
>+ c->lower = 1; c->upper = REPEAT_INFINITE; c->greedy = 1;
>+ return ;
>+ break;
>+ case RQ_PQ_Q:
>+ p->target = cnode;
>+ p->lower = 0; p->upper = 1; p->greedy = 1;
>+ c->lower = 1; c->upper = REPEAT_INFINITE; c->greedy = 0;
>+ return ;
>+ break;
>+ case RQ_ASIS:
>+ p->target = cnode;
>+ return ;
>+ break;
>+ }
>}
>
>c->target = NULL_NODE;
>@@ -4532,32 +4535,34 @@
>
>nestq_num = popular_qualifier_num(qn);
>targetq_num = popular_qualifier_num(qnt);
>+ if ( nestq_num >= 0 && targetq_num >= 0 )
>+ {
>+ switch(ReduceTypeTable[targetq_num][nestq_num]) {
>+ case RQ_ASIS:
>+ break;
>+
>+ if (onig_verb_warn != onig_null_warn) {
>+ onig_snprintf_with_pattern(buf, WARN_BUFSIZE, env->enc,
>+ env->pattern, env->pattern_end,
>+ (UChar* )"redundant nested repeat operator");
>+ (*onig_verb_warn)((char* )buf);
>+ }
>+ goto warn_exit;
>+ break;
>
>- switch(ReduceTypeTable[targetq_num][nestq_num]) {
>- case RQ_ASIS:
>- break;
>-
>- if (onig_verb_warn != onig_null_warn) {
>- onig_snprintf_with_pattern(buf, WARN_BUFSIZE, env->enc,
>- env->pattern, env->pattern_end,
>- (UChar* )"redundant nested repeat
operator");
>- (*onig_verb_warn)((char* )buf);
>- }
>- goto warn_exit;
>- break;
>-
>- if (onig_verb_warn != onig_null_warn) {
>- onig_snprintf_with_pattern(buf, WARN_BUFSIZE, env->enc,
>- env->pattern, env->pattern_end,
>- (UChar* )"nested repeat operator %s and %s was replaced with
'%s'",
>- PopularQStr[targetq_num], PopularQStr[nestq_num],
>- ReduceQStr[ReduceTypeTable[targetq_num][nestq_num]]);
>- (*onig_verb_warn)((char* )buf);
>+ default:
>+ if (onig_verb_warn != onig_null_warn) {
>+ onig_snprintf_with_pattern(buf, WARN_BUFSIZE, env->enc,
>+ env->pattern, env->pattern_end,
>+ (UChar* )"nested repeat operator %s and %s was
replaced
>with '%s'",
>+ PopularQStr[targetq_num], PopularQStr[nestq_num],
>+ ReduceQStr[ReduceTypeTable[targetq_num][nestq_num]]);
>+ (*onig_verb_warn)((char* )buf);
>+ }
>+ goto warn_exit;
>+ break;
>}
>- goto warn_exit;
>- break;
>}
>}
>
>