diff options
Diffstat (limited to 'source/ap/vim/patches/7.2.400')
-rw-r--r-- | source/ap/vim/patches/7.2.400 | 454 |
1 files changed, 0 insertions, 454 deletions
diff --git a/source/ap/vim/patches/7.2.400 b/source/ap/vim/patches/7.2.400 deleted file mode 100644 index 0c3c5487..00000000 --- a/source/ap/vim/patches/7.2.400 +++ /dev/null @@ -1,454 +0,0 @@ -To: vim-dev@vim.org -Subject: Patch 7.2.400 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 7.2.400 (after 7.2.387) -Problem: Dynamic Ruby is not initialised properly for version 1.9.1. - Ruby cannot create strings from NULL. -Solution: Cleanup #ifdefs. Handle NULL like an empty string. Add - ruby_init_stack. (Sergey Khorev) -Files: src/if_ruby.c - - -*** ../vim-7.2.399/src/if_ruby.c 2010-03-10 12:46:38.000000000 +0100 ---- src/if_ruby.c 2010-03-17 17:37:53.000000000 +0100 -*************** -*** 53,58 **** ---- 53,63 ---- - # undef _WIN32_WINNT - #endif - -+ #if (defined(RUBY_VERSION) && RUBY_VERSION >= 19) \ -+ || (defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19) -+ # define RUBY19_OR_LATER 1 -+ #endif -+ - #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - /* Ruby 1.9 defines a number of static functions which use rb_num2long and - * rb_int2big */ -*************** -*** 61,67 **** - #endif - - #include <ruby.h> -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - # include <ruby/encoding.h> - #endif - ---- 66,72 ---- - #endif - - #include <ruby.h> -! #ifdef RUBY19_OR_LATER - # include <ruby/encoding.h> - #endif - -*************** -*** 172,179 **** - # define rb_ary_new dll_rb_ary_new - # define rb_ary_push dll_rb_ary_push - #endif -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 \ -! || defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - # define rb_errinfo dll_rb_errinfo - #else - # define ruby_errinfo (*dll_ruby_errinfo) ---- 177,183 ---- - # define rb_ary_new dll_rb_ary_new - # define rb_ary_push dll_rb_ary_push - #endif -! #ifdef RUBY19_OR_LATER - # define rb_errinfo dll_rb_errinfo - #else - # define ruby_errinfo (*dll_ruby_errinfo) -*************** -*** 185,196 **** - # define rb_w32_snprintf dll_rb_w32_snprintf - #endif - -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - # define ruby_script dll_ruby_script - # define rb_enc_find_index dll_rb_enc_find_index - # define rb_enc_find dll_rb_enc_find - # define rb_enc_str_new dll_rb_enc_str_new - # define rb_sprintf dll_rb_sprintf - #endif - - /* ---- 189,201 ---- - # define rb_w32_snprintf dll_rb_w32_snprintf - #endif - -! #ifdef RUBY19_OR_LATER - # define ruby_script dll_ruby_script - # define rb_enc_find_index dll_rb_enc_find_index - # define rb_enc_find dll_rb_enc_find - # define rb_enc_str_new dll_rb_enc_str_new - # define rb_sprintf dll_rb_sprintf -+ # define ruby_init_stack dll_ruby_init_stack - #endif - - /* -*************** -*** 240,247 **** - static VALUE (*dll_rb_str_concat) (VALUE, VALUE); - static VALUE (*dll_rb_str_new) (const char*, long); - static VALUE (*dll_rb_str_new2) (const char*); -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 \ -! || defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - static VALUE (*dll_rb_errinfo) (void); - #else - static VALUE *dll_ruby_errinfo; ---- 245,251 ---- - static VALUE (*dll_rb_str_concat) (VALUE, VALUE); - static VALUE (*dll_rb_str_new) (const char*, long); - static VALUE (*dll_rb_str_new2) (const char*); -! #ifdef RUBY19_OR_LATER - static VALUE (*dll_rb_errinfo) (void); - #else - static VALUE *dll_ruby_errinfo; -*************** -*** 255,276 **** - static VALUE (*dll_rb_ary_new) (void); - static VALUE (*dll_rb_ary_push) (VALUE, VALUE); - #endif -! #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - static VALUE (*dll_rb_int2big)(SIGNED_VALUE); - #endif - #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 18 - static int (*dll_rb_w32_snprintf)(char*, size_t, const char*, ...); - #endif - -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - static void (*dll_ruby_script) (const char*); - static int (*dll_rb_enc_find_index) (const char*); - static rb_encoding* (*dll_rb_enc_find) (const char*); - static VALUE (*dll_rb_enc_str_new) (const char*, long, rb_encoding*); - static VALUE (*dll_rb_sprintf) (const char*, ...); - #endif - -! #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - static SIGNED_VALUE rb_num2long_stub(VALUE x) - { - return dll_rb_num2long(x); ---- 259,281 ---- - static VALUE (*dll_rb_ary_new) (void); - static VALUE (*dll_rb_ary_push) (VALUE, VALUE); - #endif -! #ifdef RUBY19_OR_LATER - static VALUE (*dll_rb_int2big)(SIGNED_VALUE); - #endif - #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 18 - static int (*dll_rb_w32_snprintf)(char*, size_t, const char*, ...); - #endif - -! #ifdef RUBY19_OR_LATER - static void (*dll_ruby_script) (const char*); - static int (*dll_rb_enc_find_index) (const char*); - static rb_encoding* (*dll_rb_enc_find) (const char*); - static VALUE (*dll_rb_enc_str_new) (const char*, long, rb_encoding*); - static VALUE (*dll_rb_sprintf) (const char*, ...); -+ static void (*ruby_init_stack)(VALUE*); - #endif - -! #ifdef RUBY19_OR_LATER - static SIGNED_VALUE rb_num2long_stub(VALUE x) - { - return dll_rb_num2long(x); -*************** -*** 336,343 **** - {"rb_str_concat", (RUBY_PROC*)&dll_rb_str_concat}, - {"rb_str_new", (RUBY_PROC*)&dll_rb_str_new}, - {"rb_str_new2", (RUBY_PROC*)&dll_rb_str_new2}, -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 \ -! || defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - {"rb_errinfo", (RUBY_PROC*)&dll_rb_errinfo}, - #else - {"ruby_errinfo", (RUBY_PROC*)&dll_ruby_errinfo}, ---- 341,347 ---- - {"rb_str_concat", (RUBY_PROC*)&dll_rb_str_concat}, - {"rb_str_new", (RUBY_PROC*)&dll_rb_str_new}, - {"rb_str_new2", (RUBY_PROC*)&dll_rb_str_new2}, -! #ifdef RUBY19_OR_LATER - {"rb_errinfo", (RUBY_PROC*)&dll_rb_errinfo}, - #else - {"ruby_errinfo", (RUBY_PROC*)&dll_ruby_errinfo}, -*************** -*** 360,374 **** - {"rb_ary_new", (RUBY_PROC*)&dll_rb_ary_new}, - {"rb_ary_push", (RUBY_PROC*)&dll_rb_ary_push}, - #endif -! #if defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - {"rb_int2big", (RUBY_PROC*)&dll_rb_int2big}, -- #endif -- #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - {"ruby_script", (RUBY_PROC*)&dll_ruby_script}, - {"rb_enc_find_index", (RUBY_PROC*)&dll_rb_enc_find_index}, - {"rb_enc_find", (RUBY_PROC*)&dll_rb_enc_find}, - {"rb_enc_str_new", (RUBY_PROC*)&dll_rb_enc_str_new}, - {"rb_sprintf", (RUBY_PROC*)&dll_rb_sprintf}, - #endif - {"", NULL}, - }; ---- 364,377 ---- - {"rb_ary_new", (RUBY_PROC*)&dll_rb_ary_new}, - {"rb_ary_push", (RUBY_PROC*)&dll_rb_ary_push}, - #endif -! #ifdef RUBY19_OR_LATER - {"rb_int2big", (RUBY_PROC*)&dll_rb_int2big}, - {"ruby_script", (RUBY_PROC*)&dll_ruby_script}, - {"rb_enc_find_index", (RUBY_PROC*)&dll_rb_enc_find_index}, - {"rb_enc_find", (RUBY_PROC*)&dll_rb_enc_find}, - {"rb_enc_str_new", (RUBY_PROC*)&dll_rb_enc_str_new}, - {"rb_sprintf", (RUBY_PROC*)&dll_rb_sprintf}, -+ {"ruby_init_stack", (RUBY_PROC*)&dll_ruby_init_stack}, - #endif - {"", NULL}, - }; -*************** -*** 467,473 **** - static VALUE - vim_str2rb_enc_str(const char *s) - { -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - int isnum; - long lval; - char_u *sval; ---- 470,476 ---- - static VALUE - vim_str2rb_enc_str(const char *s) - { -! #ifdef RUBY19_OR_LATER - int isnum; - long lval; - char_u *sval; -*************** -*** 489,495 **** - static VALUE - eval_enc_string_protect(const char *str, int *state) - { -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - int isnum; - long lval; - char_u *sval; ---- 492,498 ---- - static VALUE - eval_enc_string_protect(const char *str, int *state) - { -! #ifdef RUBY19_OR_LATER - int isnum; - long lval; - char_u *sval; -*************** -*** 591,606 **** - char *argv[] = {"gvim.exe"}; - NtInitialize(&argc, &argv); - #endif -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - RUBY_INIT_STACK; - #endif - ruby_init(); -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - ruby_script("vim-ruby"); - #endif - ruby_init_loadpath(); - ruby_io_init(); -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 - rb_enc_find_index("encdb"); - #endif - ruby_vim_init(); ---- 594,609 ---- - char *argv[] = {"gvim.exe"}; - NtInitialize(&argc, &argv); - #endif -! #ifdef RUBY19_OR_LATER - RUBY_INIT_STACK; - #endif - ruby_init(); -! #ifdef RUBY19_OR_LATER - ruby_script("vim-ruby"); - #endif - ruby_init_loadpath(); - ruby_io_init(); -! #ifdef RUBY19_OR_LATER - rb_enc_find_index("encdb"); - #endif - ruby_vim_init(); -*************** -*** 657,664 **** - break; - case TAG_RAISE: - case TAG_FATAL: -! #if defined(RUBY_VERSION) && RUBY_VERSION >= 19 \ -! || defined(DYNAMIC_RUBY_VER) && DYNAMIC_RUBY_VER >= 19 - eclass = CLASS_OF(rb_errinfo()); - einfo = rb_obj_as_string(rb_errinfo()); - #else ---- 660,666 ---- - break; - case TAG_RAISE: - case TAG_FATAL: -! #ifdef RUBY19_OR_LATER - eclass = CLASS_OF(rb_errinfo()); - einfo = rb_obj_as_string(rb_errinfo()); - #else -*************** -*** 720,775 **** - - if (tv->v_type == VAR_STRING) - { -! result = rb_str_new2((char *)tv->vval.v_string); - } - else if (tv->v_type == VAR_NUMBER) - { -! result = INT2NUM(tv->vval.v_number); - } - # ifdef FEAT_FLOAT - else if (tv->v_type == VAR_FLOAT) - { -! result = rb_float_new(tv->vval.v_float); - } - # endif - else if (tv->v_type == VAR_LIST) - { -! list_T *list = tv->vval.v_list; -! listitem_T *curr; - -! result = rb_ary_new(); - -! if (list != NULL) -! { -! for (curr = list->lv_first; curr != NULL; curr = curr->li_next) -! { -! rb_ary_push(result, vim_to_ruby(&curr->li_tv)); -! } -! } - } - else if (tv->v_type == VAR_DICT) - { -! result = rb_hash_new(); - -! if (tv->vval.v_dict != NULL) -! { -! hashtab_T *ht = &tv->vval.v_dict->dv_hashtab; -! long_u todo = ht->ht_used; -! hashitem_T *hi; -! dictitem_T *di; -! -! for (hi = ht->ht_array; todo > 0; ++hi) -! { -! if (!HASHITEM_EMPTY(hi)) -! { -! --todo; - -! di = dict_lookup(hi); -! rb_hash_aset(result, rb_str_new2((char *)hi->hi_key), - vim_to_ruby(&di->di_tv)); -! } -! } -! } - } /* else return Qnil; */ - - return result; ---- 722,778 ---- - - if (tv->v_type == VAR_STRING) - { -! result = rb_str_new2((char *)(tv->vval.v_string == NULL -! ? "" : tv->vval.v_string)); - } - else if (tv->v_type == VAR_NUMBER) - { -! result = INT2NUM(tv->vval.v_number); - } - # ifdef FEAT_FLOAT - else if (tv->v_type == VAR_FLOAT) - { -! result = rb_float_new(tv->vval.v_float); - } - # endif - else if (tv->v_type == VAR_LIST) - { -! list_T *list = tv->vval.v_list; -! listitem_T *curr; - -! result = rb_ary_new(); - -! if (list != NULL) -! { -! for (curr = list->lv_first; curr != NULL; curr = curr->li_next) -! { -! rb_ary_push(result, vim_to_ruby(&curr->li_tv)); -! } -! } - } - else if (tv->v_type == VAR_DICT) - { -! result = rb_hash_new(); - -! if (tv->vval.v_dict != NULL) -! { -! hashtab_T *ht = &tv->vval.v_dict->dv_hashtab; -! long_u todo = ht->ht_used; -! hashitem_T *hi; -! dictitem_T *di; -! -! for (hi = ht->ht_array; todo > 0; ++hi) -! { -! if (!HASHITEM_EMPTY(hi)) -! { -! --todo; - -! di = dict_lookup(hi); -! rb_hash_aset(result, rb_str_new2((char *)hi->hi_key), - vim_to_ruby(&di->di_tv)); -! } -! } -! } - } /* else return Qnil; */ - - return result; -*************** -*** 785,791 **** - tv = eval_expr((char_u *)StringValuePtr(str), NULL); - if (tv == NULL) - { -! return Qnil; - } - result = vim_to_ruby(tv); - ---- 788,794 ---- - tv = eval_expr((char_u *)StringValuePtr(str), NULL); - if (tv == NULL) - { -! return Qnil; - } - result = vim_to_ruby(tv); - -*** ../vim-7.2.399/src/version.c 2010-03-17 17:24:58.000000000 +0100 ---- src/version.c 2010-03-17 18:14:31.000000000 +0100 -*************** -*** 683,684 **** ---- 683,686 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 400, - /**/ - --- -Q: What do you call a fish without an eye? -A: fsh! -Q: What do you call a deer with no eyes? -A: no eye deer. -Q: What do you call a deer with no eyes and no legs? -A: still no eye deer. - - /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ -/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ -\\\ download, build and distribute -- http://www.A-A-P.org /// - \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |