Fix T41408: Diffuse and specular passes were incorrect with combined/color passes disabled
Fix undo in texture painting not refreshing float images in viewport if
16 bit float textures was off
Cleanup: Remove Visual Studio 2012 code from builder.
Scons / Buildbot: Remove code for Visual Studio 2008.

Probably the vc2013 builder can become a more generic name now, but I will double check this with Martijn.
Fix T41349: Muting texture nodes can cause crashes.

Problem is that setup of stack indices which refer to the same stack
entry can lead to cyclic TexDelegate node pointers, causing an infinite
loop.

Fixing this would take too much time and require recoding large parts of
the texnodes system, which is earmarked for scrapping anyway ... So for
now just disabled muting in texnodes to avoid crashes.
Console detection now works reliably when starting blender-app directly
Stupid MSVC replaces tabs to spaces spontaneously :S
Fix T41414, T41386.

There were a few issues to fix here:

* We did not really unpremultiply float image dabs prior to sending them
to the GPU. That made float and byte image result different in texture
painting and undoing could change the result.
* To make textures nicely composited over the mesh, I used decal mode in
OpenGL texture environment for the texture unit. This uses the texture's
alpha channel with a nice over operator.
* Texture creation used to override the alpha setting due to the display
restrictions. Not so anymore, people can now create transparent byte
images.

Also, made alpha zero default for new textures now, since it has such a
nice effect here.
Support table erasor in projective painting as well.
Fix T41411: Undo crashing with background images set.

Since 3DViews use IDs like images or clips, we can't skip anymore `lib_link_screen()`
when reading from mem for undo/redo stuff. Else, freeing (unused) screen in `BKE_read_file_from_memfile()`
will lead to using data already freed (since pointers have not been updated when reading that undo step).
Cleanup.
Change previous commit that uses transparency by default.

Sampling still samples the texture color in transparent areas. This is
not so bad but users may get confused when clicking on a white spot and
picking black instead of the mesh color.

Krita also has this uncertainty when picking in transparent areas but we
do not interpolate with an explicit "transparent" looking texture during
viewport drawing (maybe we should), so it's not so apparent what happens
here.
Fix T41409: Copy Custom Property function does nothing with pose bones.

Copying custom IDprops actually never worked, afaik, since previous code was copying 'from'
prop onto itself, in this case!
Fix part of T41406

Attempt to make soften brush faster by allowing non-symmetric kernels.
Projective painting supports those naturally but for 2D painting there's
a small hack to avoid shifting of the texture. Not totally correct but
it works for now.
Fix T41415: Lasso keymap not working in UV editor.

Extend option was not implemented for UV lasso select...
Fix T41060: Wrong texture 'Object' mapping in 3DView Rendered mode with Blender Internal
Fix T40566: Light instances disappears in rendered viewport (Blender Internal)

This is just another issue caused by convertblender overwriting the object
matrix at the time of creating render object. What's even worse here is that
original matrix is not stored for the lamps, only lamp_matrix*view_matrix is
stored.

For sure we can combine lar->co and lar->mat back to mat4, multiply by the
inverse view matrix and get object matrix, but this is not suitable for the
viewport render because every viewport rotation will accumulate the error.

For now let's store worldspace lamp matrix in the LampRen structure and use
it when rotating the scene.
Auto-update of themes (missing properties in XML files).
Fix T41164: Knife creates duplicate verts
Knife tool: cleanup threshold use, avoid sqrt