I should have mentioned that I'm on Linux. Didn't notice that the env for this bug is described as Windows Server.
I verified that I'm seeing the incorrect behavior. I created a matrix job, and assigned it to run on the master and a slave node. The job just runs 'echo "Node name is $NODE_NAME"'
On the master:
Building on master in workspace /home/br/hudson/hudson-data/jobs/matrix_test/workspace/label/lenny_32bit
[lenny_32bit] $ /bin/sh -xe /tmp/hudson6521396441231883115.sh
+ echo 'Node name is '
Node name is
On the slave:
Building remotely on jenkins-precise-64 in workspace /home/br/hudson-data/workspace/matrix_test/label/precise_64bit
[precise_64bit] $ /bin/sh -xe /tmp/hudson5676803587228444916.sh
+ echo Node name is jenkins-precise-64
Node name is jenkins-precise-64