diff options
author | normal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-03-02 01:49:15 +0000 |
---|---|---|
committer | normal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-03-02 01:49:15 +0000 |
commit | 8120b188627c610a2040c47e89d825a8bb1e564d (patch) | |
tree | 90835a0cef6274f9bf1703dd9f25f7102ffbf990 /load.c | |
parent | 9db0dd7bb9562c2c21d651879bf5dc43e2cc5d2f (diff) |
load.c (ruby_init_ext): make idempotent to suppress warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'load.c')
-rw-r--r-- | load.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -1059,10 +1059,13 @@ ruby_init_ext(const char *name, void (*init)(void)) { st_table *loading_tbl = get_loading_table(); + if (rb_provided(name)) + return; if (!loading_tbl) { GET_VM()->loading_table = loading_tbl = st_init_strtable(); } st_update(loading_tbl, (st_data_t)name, register_init_ext, (st_data_t)init); + rb_provide(name); } /* |