This must be a bug
This is either a bug or poor design, the other day, a customer asked me to update his shipping address on database (he was an elderly gentelman, could not figure out himself), anyways when I went to the use profile page, bingo! there were no fields to update for the shipping name and lastname.
I was confused and went to the database to see if the customer table has s_firstname, s_lastname fields and bingo, they are not there!
Shipping firstname and lastname are only saved to the database when an order was placed. However if the user just registers but does not complete the checkout then the shipping firstname and lastname are replaced with billing name/lastname.
On the payment page, there is a modify profile link, and when you go there and update info, it does not not store that data unless you complete the order.
That does not sound right to me. In my customer's case he was so confused and he sent an email and updated shipping name/lastname that way, cause he wants it to be shipped to his granddaughter.
This weird setup should definitely be fixed in the next release.
x-cart 4.0.16 (linux)