An unsynchronized client sets nLockTime to its current height (or possibly slightly further back). There is a privacy implication which was not discussed in pull #2340. Since offline clients have a different chainActive.Height(), it is possible to link different wallets to individual clients. This additional metadata can tie everything back to the client’s blockchain state even when different wallets are swapped in.
One possible fix would be to not set nLockTime on a transaction if the client has not recently connected to the network.