disable padding warning for DNA, gave problems with struct bounds padding which DNA ignores.
tag operator callbacks as needing their return values used. These are not directly called in many places so the inconvenience is minimal.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51102 954f8c5b-7b00-dc11-b283-0030488c597c
add circle select for metaballs


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51103 954f8c5b-7b00-dc11-b283-0030488c597c
add mball_foreachScreenElem() and use for lasso & circle selection, also utility metaball functions to (de)select all.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51104 954f8c5b-7b00-dc11-b283-0030488c597c
fix [#32779] Bmesh module: assigning to bm.select_mode crashes Blender if bmesh is empty

was missing set typecheck


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51105 954f8c5b-7b00-dc11-b283-0030488c597c
toggle cut through in the knife tool now refreshes (before you had to wave the mouse about to see the result).
also remove print from last commit.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51106 954f8c5b-7b00-dc11-b283-0030488c597c
Bugfix [#32789] (Minor) Different types used between func declaration and
definition (EDBM_selectmode_convert())

Cheers to Sebastian Nell (codemanx) for catching this.



git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51107 954f8c5b-7b00-dc11-b283-0030488c597c
Color Management: fixed loading configuration from non-ascii paths

Used the same hack as BLI gzip is using -- calculate short path and
send it to OCIO library.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51108 954f8c5b-7b00-dc11-b283-0030488c597c
Better support for LLVM linking, needed for static OSL library.

This adds cmake code for LLVM on linux and updates the cmake code used for OSX.
LLVM is linked like other external libraries now, by using the setup_liblinks and setup_libdirs macros instead of the PLATFORM_LINKFLAGS variable.
The use of llvm-config for getting a list of libraries can also be simplified quite a bit.

Caching the LLVM_DIRECTORY and LLVM_VERSION strings could be nicer though.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51109 954f8c5b-7b00-dc11-b283-0030488c597c
Fix for UV texture coordinate problem in cycles, after recent fix.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51110 954f8c5b-7b00-dc11-b283-0030488c597c
fix reading past array bounds for nearest_uv_between() and draw_tracking_tracks().


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51111 954f8c5b-7b00-dc11-b283-0030488c597c
fix writing past array bounds in imagewraposa().

also correct array sizes in othere areas.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51112 954f8c5b-7b00-dc11-b283-0030488c597c
added simple checker for array sizes, uses clang to parse C/C++,

Warns if an array is passed to a function where the array is declared larger, eg float[2] argument is passed function defined as float[3], (or a greater size).

Existing free static checkers dont do this from what I can tell.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51113 954f8c5b-7b00-dc11-b283-0030488c597c
Fix for incomplete loading of liboslexec static library. This is needed in order to provide the osl_allocate_closure_component function for LLVM.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51116 954f8c5b-7b00-dc11-b283-0030488c597c
Fix for a case of 'static initialization fiasco' with OSL closure variables. The parameter lists are using OIIO::TypeDesc static standards, which are also static variables. With static OSL libraries these are not initialized when the closure parameter lists are initialized, so OSL rejects the closure types.

Putting static initialization into functions works just as well, but ensures the OIIO::TypeDesc access is delayed until initialization is complete.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51117 954f8c5b-7b00-dc11-b283-0030488c597c
Code cleanups for PBVH GPU buffers

* De-duplicate GPU code to check if VBO should be used.

* Add a flag to indicate if the buffer should be drawn smooth or not,
  rather than checking each time the node is drawn.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51118 954f8c5b-7b00-dc11-b283-0030488c597c
Improve flat-shaded VBO drawing for sculpt meshes

Separate vertex copies are now made for flat-shading, such that the
normal is correctly flat-shaded. The element index buffer is not
created in this case.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51119 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles / OSL:
* OSL UI message did not show up when device type was GPU, but User Preferences were None. Also remove experimental check, more convenient for testing. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51120 954f8c5b-7b00-dc11-b283-0030488c597c
Increase maximum octree depth to 12

Note that this is just an RNA change, underlying dualcon octree
already supports even higher values.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51121 954f8c5b-7b00-dc11-b283-0030488c597c
Code cleanups for dualcon octree

* Move InternalNode operators from Octree class into InternalNode
  struct

* Constify various member functions

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51122 954f8c5b-7b00-dc11-b283-0030488c597c
Avoid unecessary minimizer calculations in dualcon

* The minimize() function, which solves a least-squares problem, is
  only needed for sharp remesh mode, but was being calculated for
  smooth and blocks modes as well. Disabling this calculation when
  it's not needed gives a big performance boost.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@51123 954f8c5b-7b00-dc11-b283-0030488c597c