Karsten Hopp b46193
To: vim_dev@googlegroups.com
Karsten Hopp b46193
Subject: Patch 7.3.885
Karsten Hopp b46193
Fcc: outbox
Karsten Hopp b46193
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp b46193
Mime-Version: 1.0
Karsten Hopp b46193
Content-Type: text/plain; charset=UTF-8
Karsten Hopp b46193
Content-Transfer-Encoding: 8bit
Karsten Hopp b46193
------------
Karsten Hopp b46193
Karsten Hopp b46193
Patch 7.3.885
Karsten Hopp b46193
Problem:    Double free for list and dict in Lua. (Shougo Matsu)
Karsten Hopp b46193
Solution:   Do not unref list and dict. (Yasuhiro Matsumoto)
Karsten Hopp b46193
Files:	    src/if_lua.c
Karsten Hopp b46193
Karsten Hopp b46193
Karsten Hopp b46193
*** ../vim-7.3.884/src/if_lua.c	2013-02-14 22:19:47.000000000 +0100
Karsten Hopp b46193
--- src/if_lua.c	2013-04-12 11:42:56.000000000 +0200
Karsten Hopp b46193
***************
Karsten Hopp b46193
*** 665,677 ****
Karsten Hopp b46193
  luaV_type_tostring(list, LUAVIM_LIST)
Karsten Hopp b46193
  
Karsten Hopp b46193
      static int
Karsten Hopp b46193
- luaV_list_gc (lua_State *L)
Karsten Hopp b46193
- {
Karsten Hopp b46193
-     list_unref(luaV_unbox(L, luaV_List, 1));
Karsten Hopp b46193
-     return 0;
Karsten Hopp b46193
- }
Karsten Hopp b46193
- 
Karsten Hopp b46193
-     static int
Karsten Hopp b46193
  luaV_list_len (lua_State *L)
Karsten Hopp b46193
  {
Karsten Hopp b46193
      list_T *l = luaV_unbox(L, luaV_List, 1);
Karsten Hopp b46193
--- 665,670 ----
Karsten Hopp b46193
***************
Karsten Hopp b46193
*** 801,807 ****
Karsten Hopp b46193
  
Karsten Hopp b46193
  static const luaL_Reg luaV_List_mt[] = {
Karsten Hopp b46193
      {"__tostring", luaV_list_tostring},
Karsten Hopp b46193
-     {"__gc", luaV_list_gc},
Karsten Hopp b46193
      {"__len", luaV_list_len},
Karsten Hopp b46193
      {"__call", luaV_list_call},
Karsten Hopp b46193
      {"__index", luaV_list_index},
Karsten Hopp b46193
--- 794,799 ----
Karsten Hopp b46193
***************
Karsten Hopp b46193
*** 830,842 ****
Karsten Hopp b46193
  luaV_type_tostring(dict, LUAVIM_DICT)
Karsten Hopp b46193
  
Karsten Hopp b46193
      static int
Karsten Hopp b46193
- luaV_dict_gc (lua_State *L)
Karsten Hopp b46193
- {
Karsten Hopp b46193
-     dict_unref(luaV_unbox(L, luaV_Dict, 1));
Karsten Hopp b46193
-     return 0;
Karsten Hopp b46193
- }
Karsten Hopp b46193
- 
Karsten Hopp b46193
-     static int
Karsten Hopp b46193
  luaV_dict_len (lua_State *L)
Karsten Hopp b46193
  {
Karsten Hopp b46193
      dict_T *d = luaV_unbox(L, luaV_Dict, 1);
Karsten Hopp b46193
--- 822,827 ----
Karsten Hopp b46193
***************
Karsten Hopp b46193
*** 929,935 ****
Karsten Hopp b46193
  
Karsten Hopp b46193
  static const luaL_Reg luaV_Dict_mt[] = {
Karsten Hopp b46193
      {"__tostring", luaV_dict_tostring},
Karsten Hopp b46193
-     {"__gc", luaV_dict_gc},
Karsten Hopp b46193
      {"__len", luaV_dict_len},
Karsten Hopp b46193
      {"__call", luaV_dict_call},
Karsten Hopp b46193
      {"__index", luaV_dict_index},
Karsten Hopp b46193
--- 914,919 ----
Karsten Hopp b46193
*** ../vim-7.3.884/src/version.c	2013-04-06 14:30:35.000000000 +0200
Karsten Hopp b46193
--- src/version.c	2013-04-12 11:44:45.000000000 +0200
Karsten Hopp b46193
***************
Karsten Hopp b46193
*** 730,731 ****
Karsten Hopp b46193
--- 730,733 ----
Karsten Hopp b46193
  {   /* Add new patch number below this line */
Karsten Hopp b46193
+ /**/
Karsten Hopp b46193
+     885,
Karsten Hopp b46193
  /**/
Karsten Hopp b46193
Karsten Hopp b46193
-- 
Karsten Hopp b46193
hundred-and-one symptoms of being an internet addict:
Karsten Hopp b46193
148. You find it easier to dial-up the National Weather Service
Karsten Hopp b46193
     Weather/your_town/now.html than to simply look out the window.
Karsten Hopp b46193
Karsten Hopp b46193
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp b46193
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp b46193
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp b46193
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///