Skip to content

Commit

Permalink
patch 8.2.4556: test fails without the +job or +channel feature
Browse files Browse the repository at this point in the history
Problem:    Test fails without the +job or +channel feature. (Dominique Pellé)
Solution:   Adjust #ifdefs.  Pass on skip flag. (closes #9942)
  • Loading branch information
brammool committed Mar 13, 2022
1 parent 986b0fd commit 4f3321f
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 5 deletions.
14 changes: 10 additions & 4 deletions src/eval.c
Expand Up @@ -3515,15 +3515,18 @@ handle_predefined(char_u *s, int len, typval_T *rettv)
return OK;
}
break;
#ifdef FEAT_JOB_CHANNEL
case 8: if (STRNCMP(s, "null_job", 8) == 0)
{
#ifdef FEAT_JOB_CHANNEL
rettv->v_type = VAR_JOB;
rettv->vval.v_job = NULL;
#else
rettv->v_type = VAR_SPECIAL;
rettv->vval.v_number = VVAL_NULL;
#endif
return OK;
}
break;
#endif
case 9:
if (STRNCMP(s, "null_", 5) != 0)
break;
Expand Down Expand Up @@ -3554,14 +3557,17 @@ handle_predefined(char_u *s, int len, typval_T *rettv)
}
break;
case 12:
#ifdef FEAT_JOB_CHANNEL
if (STRNCMP(s, "null_channel", 12) == 0)
{
#ifdef FEAT_JOB_CHANNEL
rettv->v_type = VAR_CHANNEL;
rettv->vval.v_channel = NULL;
#else
rettv->v_type = VAR_SPECIAL;
rettv->vval.v_number = VVAL_NULL;
#endif
return OK;
}
#endif
if (STRNCMP(s, "null_partial", 12) == 0)
{
rettv->v_type = VAR_PARTIAL;
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Expand Up @@ -750,6 +750,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
/**/
4556,
/**/
4555,
/**/
Expand Down
4 changes: 3 additions & 1 deletion src/vim9compile.c
Expand Up @@ -762,6 +762,7 @@ fill_exarg_from_cctx(exarg_T *eap, cctx_T *cctx)
{
eap->getline = exarg_getline;
eap->cookie = cctx;
eap->skip = cctx->ctx_skip == SKIP_YES;
}

/*
Expand Down Expand Up @@ -855,7 +856,8 @@ compile_nested_function(exarg_T *eap, cctx_T *cctx, garray_T *lines_to_free)
semsg(_(e_namespace_not_supported_str), name_start);
return NULL;
}
if (check_defined(name_start, name_end - name_start, cctx,
if (cctx->ctx_skip != SKIP_YES
&& check_defined(name_start, name_end - name_start, cctx,
NULL, FALSE) == FAIL)
return NULL;
if (!ASCII_ISUPPER(is_global ? name_start[2] : name_start[0]))
Expand Down

0 comments on commit 4f3321f

Please sign in to comment.