comparison src/userfunc.c @ 18962:af44ca0ddf49 v8.2.0042

patch 8.2.0042: clearing funccal values twice Commit: https://github.com/vim/vim/commit/eac7ce01e92f3dee6bbccaf7e88680fe2ce286eb Author: Bram Moolenaar <Bram@vim.org> Date: Wed Dec 25 15:04:03 2019 +0100 patch 8.2.0042: clearing funccal values twice Problem: Clearing funccal values twice. Solution: Remove clearing individual fields.
author Bram Moolenaar <Bram@vim.org>
date Wed, 25 Dec 2019 15:15:03 +0100
parents 2bdc2e1f6e1f
children 847cc7932c42
comparison
equal deleted inserted replaced
18961:b7bfc651f3e4 18962:af44ca0ddf49
798 return; 798 return;
799 fc->caller = current_funccal; 799 fc->caller = current_funccal;
800 current_funccal = fc; 800 current_funccal = fc;
801 fc->func = fp; 801 fc->func = fp;
802 fc->rettv = rettv; 802 fc->rettv = rettv;
803 rettv->vval.v_number = 0;
804 fc->linenr = 0;
805 fc->returned = FALSE;
806 fc->level = ex_nesting_level; 803 fc->level = ex_nesting_level;
807 // Check if this function has a breakpoint. 804 // Check if this function has a breakpoint.
808 fc->breakpoint = dbg_find_breakpoint(FALSE, fp->uf_name, (linenr_T)0); 805 fc->breakpoint = dbg_find_breakpoint(FALSE, fp->uf_name, (linenr_T)0);
809 fc->dbg_tick = debug_tick; 806 fc->dbg_tick = debug_tick;
810 // Set up fields for closure. 807 // Set up fields for closure.
811 fc->fc_refcount = 0;
812 fc->fc_copyID = 0;
813 ga_init2(&fc->fc_funcs, sizeof(ufunc_T *), 1); 808 ga_init2(&fc->fc_funcs, sizeof(ufunc_T *), 1);
814 func_ptr_ref(fp); 809 func_ptr_ref(fp);
815 810
816 if (STRNCMP(fp->uf_name, "<lambda>", 8) == 0) 811 if (STRNCMP(fp->uf_name, "<lambda>", 8) == 0)
817 islambda = TRUE; 812 islambda = TRUE;