I think this might be a new feature made available in QGIS 2.12 according to the Changelog:
The following is quoted from the website along with the images:
In the screenshot you can see that the Streets have the option “Discourage other labels from covering features in this layer” enabled. The red labels derived from polygon geometries are thus placed to avoid intersection with the street axis. You have to enable “Horizontal” or “Free” on the polygon layer in order to achieve proper results.
Therefore, try disabling the "Discourage other lavels from covering features in this layer" option.
Hope this helps!