summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.088
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/vim/patches/7.3.088')
-rw-r--r--source/ap/vim/patches/7.3.088152
1 files changed, 152 insertions, 0 deletions
diff --git a/source/ap/vim/patches/7.3.088 b/source/ap/vim/patches/7.3.088
new file mode 100644
index 000000000..98acc7c10
--- /dev/null
+++ b/source/ap/vim/patches/7.3.088
@@ -0,0 +1,152 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 7.3.088
+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.3.088
+Problem: Ruby can't load Gems sometimes, may cause a crash.
+Solution: Undefine off_t. Use ruby_process_options(). (Yasuhiro Matsumoto)
+Files: src/if_ruby.c
+
+
+*** ../vim-7.3.087/src/if_ruby.c 2010-12-08 13:11:15.000000000 +0100
+--- src/if_ruby.c 2010-12-24 12:18:31.000000000 +0100
+***************
+*** 90,95 ****
+--- 90,96 ----
+ # include <ruby/encoding.h>
+ #endif
+
++ #undef off_t /* ruby defines off_t as _int64, Mingw uses long */
+ #undef EXTERN
+ #undef _
+
+***************
+*** 229,238 ****
+ # 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_intern2 dll_rb_intern2
+- # define rb_const_remove dll_rb_const_remove
+ # define rb_sprintf dll_rb_sprintf
+ # define ruby_init_stack dll_ruby_init_stack
+ #endif
+
+ /*
+--- 230,239 ----
+ # 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 rb_require dll_rb_require
+ # define ruby_init_stack dll_ruby_init_stack
++ # define ruby_process_options dll_ruby_process_options
+ #endif
+
+ /*
+***************
+*** 319,329 ****
+ 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 ID (*dll_rb_intern2) (const char*, long);
+- static void (*dll_Init_prelude) (void);
+- static VALUE (*dll_rb_const_remove) (VALUE, ID);
+ static VALUE (*dll_rb_sprintf) (const char*, ...);
+ static void (*ruby_init_stack)(VALUE*);
+ #endif
+
+ #ifdef RUBY19_OR_LATER
+--- 320,329 ----
+ 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 VALUE (*dll_rb_require) (const char*);
+ static void (*ruby_init_stack)(VALUE*);
++ static void* (*ruby_process_options)(int, char**);
+ #endif
+
+ #ifdef RUBY19_OR_LATER
+***************
+*** 430,439 ****
+ {"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_intern2", (RUBY_PROC*)&dll_rb_intern2},
+- {"rb_const_remove", (RUBY_PROC*)&dll_rb_const_remove},
+ {"rb_sprintf", (RUBY_PROC*)&dll_rb_sprintf},
+ {"ruby_init_stack", (RUBY_PROC*)&dll_ruby_init_stack},
+ #endif
+ {"", NULL},
+ };
+--- 430,439 ----
+ {"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},
++ {"rb_require", (RUBY_PROC*)&dll_rb_require},
+ {"ruby_init_stack", (RUBY_PROC*)&dll_ruby_init_stack},
++ {"ruby_process_options", (RUBY_PROC*)&dll_ruby_process_options},
+ #endif
+ {"", NULL},
+ };
+***************
+*** 663,680 ****
+ 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");
+-
+- /* This avoids the error "Encoding::ConverterNotFoundError: code
+- * converter not found (UTF-16LE to ASCII-8BIT)". */
+- rb_define_module("Gem");
+- rb_const_remove(rb_cObject, rb_intern2("TMP_RUBY_PREFIX", 15));
+ #endif
+ ruby_vim_init();
+ ruby_initialized = 1;
+ #ifdef DYNAMIC_RUBY
+--- 663,678 ----
+ ruby_init();
+ }
+ #ifdef RUBY19_OR_LATER
++ {
++ int dummy_argc = 2;
++ char *dummy_argv[] = {"vim-ruby", "-e0"};
++ ruby_process_options(dummy_argc, dummy_argv);
++ }
+ ruby_script("vim-ruby");
+! #else
+ ruby_init_loadpath();
+ #endif
++ ruby_io_init();
+ ruby_vim_init();
+ ruby_initialized = 1;
+ #ifdef DYNAMIC_RUBY
+*** ../vim-7.3.087/src/version.c 2010-12-17 20:23:56.000000000 +0100
+--- src/version.c 2010-12-24 13:38:51.000000000 +0100
+***************
+*** 716,717 ****
+--- 716,719 ----
+ { /* Add new patch number below this line */
++ /**/
++ 88,
+ /**/
+
+--
+It is hard to understand how a cemetery raised its burial
+cost and blamed it on the cost of living.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ an exciting new programming language -- http://www.Zimbu.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///