To: vim_dev@googlegroups.com Subject: Patch 7.3.656 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.3.656 Problem: Internal error in :pyeval. Solution: Handle failed object conversion. (ZyX) Files: src/if_python.c, src/if_python3.c *** ../vim-7.3.655/src/if_python.c 2012-06-30 13:34:29.000000000 +0200 --- src/if_python.c 2012-09-05 18:52:50.000000000 +0200 *************** *** 1025,1032 **** static PySequenceMethods BufferAsSeq = { (PyInquiry) BufferLength, /* sq_length, len(x) */ ! (binaryfunc) 0, /* BufferConcat, */ /* sq_concat, x+y */ ! (PyIntArgFunc) 0, /* BufferRepeat, */ /* sq_repeat, x*n */ (PyIntArgFunc) BufferItem, /* sq_item, x[i] */ (PyIntIntArgFunc) BufferSlice, /* sq_slice, x[i:j] */ (PyIntObjArgProc) BufferAssItem, /* sq_ass_item, x[i]=v */ --- 1025,1032 ---- static PySequenceMethods BufferAsSeq = { (PyInquiry) BufferLength, /* sq_length, len(x) */ ! (binaryfunc) 0, /* BufferConcat, sq_concat, x+y */ ! (PyIntArgFunc) 0, /* BufferRepeat, sq_repeat, x*n */ (PyIntArgFunc) BufferItem, /* sq_item, x[i] */ (PyIntIntArgFunc) BufferSlice, /* sq_slice, x[i:j] */ (PyIntObjArgProc) BufferAssItem, /* sq_ass_item, x[i]=v */ *************** *** 1787,1792 **** --- 1787,1796 ---- case VAR_DICT: ++rettv->vval.v_dict->dv_refcount; break; case VAR_LIST: ++rettv->vval.v_list->lv_refcount; break; case VAR_FUNC: func_ref(rettv->vval.v_string); break; + case VAR_UNKNOWN: + rettv->v_type = VAR_NUMBER; + rettv->vval.v_number = 0; + break; } } *** ../vim-7.3.655/src/if_python3.c 2012-06-29 16:28:23.000000000 +0200 --- src/if_python3.c 2012-09-05 18:52:50.000000000 +0200 *************** *** 1817,1822 **** --- 1817,1826 ---- case VAR_DICT: ++rettv->vval.v_dict->dv_refcount; break; case VAR_LIST: ++rettv->vval.v_list->lv_refcount; break; case VAR_FUNC: func_ref(rettv->vval.v_string); break; + case VAR_UNKNOWN: + rettv->v_type = VAR_NUMBER; + rettv->vval.v_number = 0; + break; } } *** ../vim-7.3.655/src/version.c 2012-09-05 18:48:22.000000000 +0200 --- src/version.c 2012-09-05 18:53:20.000000000 +0200 *************** *** 721,722 **** --- 721,724 ---- { /* Add new patch number below this line */ + /**/ + 656, /**/ -- DEAD PERSON: I'm getting better! CUSTOMER: No, you're not -- you'll be stone dead in a moment. MORTICIAN: Oh, I can't take him like that -- it's against regulations. The Quest for the Holy Grail (Monty Python) /// 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 ///