From 3705deea99ac557c74125b7302dd15082585d76c Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Mon, 25 Apr 2022 10:02:11 +0200 Subject: [PATCH] MINOR: sample: don't needlessly call c_none() in sample_fetch_as_type() Surprisingly, while about all calls to a sample cast function carefully avoid calling c_none(), sample_fetch_as_type() makes no effort regarding this, while by nature, the function is most often called with an expected output type similar to the one of the expresison. Let's add it to shorten the most common call path. --- src/sample.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/sample.c b/src/sample.c index f43a79ed3..1278ef938 100644 --- a/src/sample.c +++ b/src/sample.c @@ -1564,7 +1564,8 @@ struct sample *sample_fetch_as_type(struct proxy *px, struct session *sess, if (!sample_casts[smp->data.type][smp_type]) return NULL; - if (!sample_casts[smp->data.type][smp_type](smp)) + if (sample_casts[smp->data.type][smp_type] != c_none && + !sample_casts[smp->data.type][smp_type](smp)) return NULL; smp->flags &= ~SMP_F_MAY_CHANGE;