When user B unshelves the changeset, the unshelved files will be placed in the workspace according to user B's client-spec (which specifies how depot paths are mapped to the local client). It'd be similar to if user A submitted the changeset and user B synced.
User B's versions of the files will be overwritten (unless they're already open for edit).