Fix for fix (don't guess enum's sign)
Fix for BKE_deform_flip_side_name getting fooled by extra separator characters

D740 by ldo with own edits
Fix T41479: BLI_bvhtree_find_nearest inaccurate

Gives noticeably better results for shrink-wrap (even in simple cases)
Fix mesh validate skipping first vertex
Fix T41471 Cycles Bake: Setting small tile size results in wrong bake with stripes rather than the expected noise pattern

This problem was introduced in 983cbafd1877f8dbaae60b064a14e27b5b640f18
Basically the issue is that we were not getting a unique index in the
baking routine for the RNG (random number generator).

Reviewers: sergey

Differential Revision: https://developer.blender.org/D749
Fix crash in BKE_mesh_validate_arrays
Mask slide can be cancelled with RMB now
Fix T41477: Some UI op buttons have no more option to edit shortcuts.

`WM_keymap_guess_opname()` was missing a bunch of op 'types'/familly. Now all are there,
either trying to find a matching keymap, or explicitely listed in a comment as skipped for now.

Note matching might not be perfect in all case, but we can easily tweak that later if needed.
Fix T41485: No priority: typo in "effectors effect themselves"

Who said 'commit count'? I only see 'bug fixing' here...
Fix T41457: Viewport resolution divider does freestyle for every resolution

Now freestyle would be rendered for the final resolution only, making it so
viewport navigation is really interactive.
Fix T40962: Ashikhmen Shirley shader fireflies
Roto: Add spline dragging zone in it's center

This dragging zone is visualized as the circle (the same as object origin)
in the spline bounding box center and dragging that circle drags the whole
spline.

Pretty much basic functionality, but quite useful in practice.

Requested by our roto team (Sebastian and Sean :) in IRC.
Replace strstr with STRPREFIX

No need to search the whole string.
Cleanup: style
Fix T41464: Material Boundary bug in Freestyle.

The reported issue was caused by an old bug combined with another bug
introduced by recent Freestyle Python API updates.

The old bug was that a mutable reference to CurvePoint was treated as if
it were immutable.  Iteration over CurvePoint objects is implemented by
the C++ CurvePointIterator class, whose dereference method
CurvePointIterator::operator*() returns a reference to a mutable data
member (probably originally intended for better performance).  Hence the
returned reference may vary upon iteration over different CurvePoints.
This implementation detail was overlooked and the returned reference was
treated as immutable (which is the case in fact for other Interface0D
subclasses except for CurvePoint).  This bug was surprisingly old as it
existed before the beginning of Freestyle integration into Blender.

The other bug was in the MaterialBoundaryUP0D predicate class that was
not properly handling the end of iteration.  It is noted that when the
iter() and next() built-in functions are applied to Interface0DIterator,
it is no longer possible to reliably check the end of iteration by the
.is_end property of the iterator.  Namely, the .is_end property works as
expected only when iteration is carried out in combination with the
conventional .increment() and .decrement() methods of the iterator.  For
this reason the commit rBb408d8af31c9 was partly reverted to recover the
previous definition of MaterialBoundaryUP0D.
BMesh: improve docs for BM_edge_split
Correct mistake in recently added intersect tool

Sorting verts along an edge wasn't working reliably.
Fix for missing updates of build scripts in the commit rB05cb63ecf750.
Adding presets for Blackmagic Pocket Cinema Camera and Blackmagic Production Camera 4K
Fix T41499: Can't use Deselect/Select All tool while in Texture Paint mode