@@ -3571,11 +3571,12 @@ get_current_funccal_dict(hashtab_T *ht)
35713571 * Search hashitem in parent scope.
35723572 */
35733573 hashitem_T *
3574- find_hi_in_scoped_ht (char_u * name , char_u * * varname , hashtab_T * * pht )
3574+ find_hi_in_scoped_ht (char_u * name , hashtab_T * * pht )
35753575{
35763576 funccall_T * old_current_funccal = current_funccal ;
35773577 hashtab_T * ht ;
35783578 hashitem_T * hi = NULL ;
3579+ char_u * varname ;
35793580
35803581 if (current_funccal == NULL || current_funccal -> func -> uf_scoped == NULL )
35813582 return NULL ;
@@ -3584,10 +3585,10 @@ find_hi_in_scoped_ht(char_u *name, char_u **varname, hashtab_T **pht)
35843585 current_funccal = current_funccal -> func -> uf_scoped ;
35853586 while (current_funccal != NULL )
35863587 {
3587- ht = find_var_ht (name , varname );
3588- if (ht != NULL && * * varname != NUL )
3588+ ht = find_var_ht (name , & varname );
3589+ if (ht != NULL && * varname != NUL )
35893590 {
3590- hi = hash_find (ht , * varname );
3591+ hi = hash_find (ht , varname );
35913592 if (!HASHITEM_EMPTY (hi ))
35923593 {
35933594 * pht = ht ;
@@ -3607,11 +3608,12 @@ find_hi_in_scoped_ht(char_u *name, char_u **varname, hashtab_T **pht)
36073608 * Search variable in parent scope.
36083609 */
36093610 dictitem_T *
3610- find_var_in_scoped_ht (char_u * name , char_u * * varname , int no_autoload )
3611+ find_var_in_scoped_ht (char_u * name , int no_autoload )
36113612{
36123613 dictitem_T * v = NULL ;
36133614 funccall_T * old_current_funccal = current_funccal ;
36143615 hashtab_T * ht ;
3616+ char_u * varname ;
36153617
36163618 if (current_funccal == NULL || current_funccal -> func -> uf_scoped == NULL )
36173619 return NULL ;
@@ -3620,11 +3622,10 @@ find_var_in_scoped_ht(char_u *name, char_u **varname, int no_autoload)
36203622 current_funccal = current_funccal -> func -> uf_scoped ;
36213623 while (current_funccal )
36223624 {
3623- ht = find_var_ht (name , varname ? & ( * varname ) : NULL );
3624- if (ht != NULL )
3625+ ht = find_var_ht (name , & varname );
3626+ if (ht != NULL && * varname != NUL )
36253627 {
3626- v = find_var_in_ht (ht , * name ,
3627- varname ? * varname : NULL , no_autoload );
3628+ v = find_var_in_ht (ht , * name , varname , no_autoload );
36283629 if (v != NULL )
36293630 break ;
36303631 }
0 commit comments