How is the transaction malleability issue being fixed?
Transaction malleability is a consequence of the features of Bitcoin. The input data (scriptSig) for claiming outputs is purposely malleable to allow for useful scenarios where one would want to claim outputs in different ways.

The consequence of these features is that the hash of the transaction changes and shouldn't be considered as a useful piece of information other than referencing outputs of transactions that have been confirmed.

With that being said, I'm not sure what changes the client could implement to prevent the hash from changing. Perhaps it can enforce specific rules, like making non-canonical data pushes non standard, however that may interfere with later extensions to Bitcoin.