uc_quote_node_update (line 104) checks

(!empty($node->shipping_address['street1']))

however when I print $node, it appears that $node->shipping_address is an object. This causes calls to uc_quote_node_update to fail, and thus kills any node_update that invokes it.

If I change all $node->shipping_address['field'] to $node->shipping_address->field, the code works fine.

The most curious thing about this is I've been working with this Ubercart installation for a month, and just now hit this issue. It appears to be very specific, as I guess uc_quote_node_update doesn't get called very often. It's also possible that $node->shipping_address isn't always an object, but I'm not sure how to check that.

Comments

goodeit’s picture

Category: task » bug

sorry, this is a bug report

longwave’s picture

Status: Needs work » Closed (duplicate)

Nobody else has reported this, seems like it should have been fixed in #1339076: Fatal error: Cannot use object of type UcAddress as array