The val union in filter_param can hold different types (str, num, fnum,
boolean). When a non-string param (e.g. a number) is used as a regex
operand, the numeric value gets reinterpreted as a pointer through
val.str. A small number like 2 becomes pointer 0x2, which passes the
existing NULL check but crashes in regcomp().
Add a type check to reject non-string params before accessing val.str.
Addresses: https://github.com/util-linux/util-linux/pull/4430 Signed-off-by: Karel Zak <kzak@redhat.com>