aboutsummaryrefslogtreecommitdiffstats
path: root/ext/tk/tkutil/tkutil.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/tk/tkutil/tkutil.c')
-rw-r--r--ext/tk/tkutil/tkutil.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/ext/tk/tkutil/tkutil.c b/ext/tk/tkutil/tkutil.c
index 147dfa23d1..3b1d3c5ecf 100644
--- a/ext/tk/tkutil/tkutil.c
+++ b/ext/tk/tkutil/tkutil.c
@@ -1284,11 +1284,13 @@ cbsubst_initialize(argc, argv, self)
inf = cbsubst_get_ptr(rb_obj_class(self));
- idx = 0;
- for(iv_idx = 0; iv_idx < CBSUBST_TBL_MAX; iv_idx++) {
- if ( inf->ivar[iv_idx] == (ID) 0 ) continue;
- rb_ivar_set(self, inf->ivar[iv_idx], argv[idx++]);
- if (idx >= argc) break;
+ if (argc > 0) {
+ idx = 0;
+ for (iv_idx = 0; iv_idx < CBSUBST_TBL_MAX; iv_idx++) {
+ if (inf->ivar[iv_idx] == (ID)0) continue;
+ rb_ivar_set(self, inf->ivar[iv_idx], argv[idx++]);
+ if (idx >= argc) break;
+ }
}
return self;