If one attempts to add an invalid item_code to the cart, it will add a blank product; one without any price, name or weight. This usually happens in developement when production tests a product page before the product has been entered into the database.
This problem has been fixed by making sure RH::Product::new returns 'undef' when given an invalid item_code.