diff --git a/ChangeLog b/ChangeLog index 65d1c6ee35..54374d6d77 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Mon Sep 1 18:00:02 2003 Yukihiro Matsumoto + + * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by + Dave Butcher. + + * eval.c (Init_Thread): protect thgroup_default. suggested by Guy + Decoux in [ruby-talk:80623] + Mon Sep 1 16:59:10 2003 Nobuyoshi Nakada * eval.c (rb_thread_switch): add RESTORE_EXIT; exit by another diff --git a/eval.c b/eval.c index 3765ae8600..fff5692080 100644 --- a/eval.c +++ b/eval.c @@ -10099,6 +10099,7 @@ Init_Thread() rb_define_method(cThGroup, "add", thgroup_add, 1); thgroup_default = rb_obj_alloc(cThGroup); rb_define_const(cThGroup, "Default", thgroup_default); + rb_global_variable(&thgroup_default); /* allocate main thread */ main_thread = rb_thread_alloc(rb_cThread); diff --git a/ext/tk/lib/tk.rb b/ext/tk/lib/tk.rb index a03e6823bb..2f42160313 100644 --- a/ext/tk/lib/tk.rb +++ b/ext/tk/lib/tk.rb @@ -1317,7 +1317,7 @@ module Tk def frame tk_call('wm', 'frame', path) end - def geometry(geom) + def geometry(geom=nil) if geom tk_call('wm', 'geometry', path, geom) self diff --git a/parse.y b/parse.y index 5fd8fcc8c5..917a92b7ef 100644 --- a/parse.y +++ b/parse.y @@ -1225,7 +1225,7 @@ aref_args : none | tSTAR arg opt_nl { value_expr($2); - $$ = NEW_BEGIN($2); + $$ = NEW_NEWLINE(NEW_SPLAT($2)); } ;