summaryrefslogtreecommitdiff
path: root/src/typval.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/typval.c')
-rw-r--r--src/typval.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/typval.c b/src/typval.c
index d0c937e5d..50b1d620a 100644
--- a/src/typval.c
+++ b/src/typval.c
@@ -1314,6 +1314,19 @@ typval_compare(
return FAIL;
}
}
+#ifdef FEAT_JOB_CHANNEL
+ else if (tv1->v_type == tv2->v_type
+ && (tv1->v_type == VAR_CHANNEL || tv1->v_type == VAR_JOB)
+ && (type == EXPR_NEQUAL || type == EXPR_EQUAL))
+ {
+ if (tv1->v_type == VAR_CHANNEL)
+ n1 = tv1->vval.v_channel == tv2->vval.v_channel;
+ else
+ n1 = tv1->vval.v_job == tv2->vval.v_job;
+ if (type == EXPR_NEQUAL)
+ n1 = !n1;
+ }
+#endif
else
{
if (typval_compare_string(tv1, tv2, type, ic, &res) == FAIL)
@@ -1417,7 +1430,7 @@ typval_compare_null(typval_T *tv1, typval_T *tv2)
default: break;
}
}
- // although comparing null with number, float or bool is not very usefule
+ // although comparing null with number, float or bool is not very useful
// we won't give an error
return FALSE;
}