Hi,
attached is a screenshot of the full call stack, hopefully it can provide some additional insight into the problem.
If we print the variant_ids they appear normal to us, for example: 220,221,222,223
However, if we print $products[$k]->variant_ids[] it appears the first element is null/empty and we think this is the cause of the error, because it falls through the check on line 954 since it is set, only null, and so on line 956 you assume it is an array while it is not, thus causing the error.
We have no idea so far why this first element is empty, and why strangely enough we seem to be the only one having this issue even though we don't have any customizations and use exactly the same code as everybody else, but if we change line 954 in currency.php from:
if(!isset($products[$k]->variant_ids))
$products[$k]->variant_ids = array();
to:
if(!isset($products[$k]->variant_ids) || $products[$k]->variant_ids==null)
$products[$k]->variant_ids = array();
this will also re-initialise the empty variant_ids as an array and everything seems to work ok.
However, this seems more of a hack and doesn't fix the cause of the problem, so any further help with that is much appreciated. Thanks.
Kind regards