Merge branch 'master' into blender2.8
authorCampbell Barton <ideasman42@gmail.com>
Wed, 26 Jul 2017 21:35:44 +0000 (07:35 +1000)
committerCampbell Barton <ideasman42@gmail.com>
Wed, 26 Jul 2017 21:35:44 +0000 (07:35 +1000)
intern/atomic/intern/atomic_ops_utils.h
release/scripts/templates_py/gamelogic.py
source/blender/blenkernel/intern/deform.c
source/blender/blenlib/BLI_compiler_compat.h
source/blender/blenlib/BLI_math_inline.h
source/gameengine/Ketsji/KX_FontObject.cpp

index bfec9918c163ad64909d1d0c9c1cd96143311c01..fa8f39b4e81b2db7d080d9b740091b9995be1907 100644 (file)
 #if defined(_MSC_VER)
 #  define ATOMIC_INLINE static __forceinline
 #else
-#  if (defined(__APPLE__) && defined(__ppc__))
-/* static inline __attribute__ here breaks osx ppc gcc42 build */
-#    define ATOMIC_INLINE static __attribute__((always_inline))
-#  else
-#    define ATOMIC_INLINE static inline __attribute__((always_inline))
-#  endif
+#  define ATOMIC_INLINE static inline __attribute__((always_inline))
 #endif
 
 #ifndef LIKELY
index 01ac27c56cdacd6c774c025205c8e0532ac8cfef..e589ad43e63ff43d7224155cc504221c03bc36ac 100644 (file)
@@ -62,7 +62,7 @@ def main():
     # adding to our objects "life" property
     """
     actu_collide = cont.sensors["collision_sens"]
-    for ob in actu_collide.objectHitList:
+    for ob in actu_collide.hitObjectList:
         # Check to see the object has this property
         if "life" in ob:
             own["life"] += ob["life"]
index ffe9986d166b10720030834a5093c53e0d0da0ff..584942628fac012ea2977e025d13e5d76421fd14 100644 (file)
@@ -624,8 +624,17 @@ float defvert_find_weight(const struct MDeformVert *dvert, const int defgroup)
  */
 float defvert_array_find_weight_safe(const struct MDeformVert *dvert, const int index, const int defgroup)
 {
-       if (defgroup == -1 || dvert == NULL)
+       /* Invalid defgroup index means the vgroup selected is invalid, does not exist, in that case it is OK to return 1.0
+        * (i.e. maximum weight, as if no vgroup was selected).
+        * But in case of valid defgroup and NULL dvert data pointer, it means that vgroup **is** valid,
+        * and just totally empty, so we shall return '0.0' value then!
+       */
+       if (defgroup == -1) {
                return 1.0f;
+       }
+       else if (dvert == NULL) {
+               return 0.0f;
+       }
 
        return defvert_find_weight(dvert + index, defgroup);
 }
index 01fc9d702073cb90e77eb07846161a8a6d01ccdf..0726e3bb34331ed508f1c3e3ca0f404f944e0eed 100644 (file)
@@ -48,12 +48,7 @@ extern "C++" {
 #if defined(_MSC_VER)
 #  define BLI_INLINE static __forceinline
 #else
-#  if (defined(__APPLE__) && defined(__ppc__))
-/* static inline __attribute__ here breaks osx ppc gcc42 build */
-#    define BLI_INLINE static __attribute__((always_inline)) __attribute__((__unused__))
-#  else
-#    define BLI_INLINE static inline __attribute__((always_inline)) __attribute__((__unused__))
-#  endif
+#  define BLI_INLINE static inline __attribute__((always_inline)) __attribute__((__unused__))
 #endif
 
 #endif  /* __BLI_COMPILER_COMPAT_H__ */
index 840cf24f8cf400843cc5b56cee7e5ee0c9a94758..383abda5b2fa4a11029c643663b6db85849bdb50 100644 (file)
@@ -44,12 +44,7 @@ extern "C" {
 #    define MALWAYS_INLINE MINLINE
 #  else
 #    define MINLINE static inline
-#    if (defined(__APPLE__) && defined(__ppc__))
-       /* static inline __attribute__ here breaks osx ppc gcc42 build */
-#      define MALWAYS_INLINE static __attribute__((always_inline)) __attribute__((unused))
-#    else
-#      define MALWAYS_INLINE static inline __attribute__((always_inline)) __attribute__((unused))
-#    endif
+#    define MALWAYS_INLINE static inline __attribute__((always_inline)) __attribute__((unused))
 #  endif
 #else
 #  define MINLINE
index 364f8d4bfc6c495413d8f3c280832a8bde5a756c..91e8e4fd42bff5380533902f5c720f89fd12c93b 100644 (file)
@@ -281,7 +281,7 @@ int KX_FontObject::pyattr_set_text(void *self_v, const KX_PYATTRIBUTE_DEF *attrd
        KX_FontObject* self = static_cast<KX_FontObject*>(self_v);
        if (!PyUnicode_Check(value))
                return PY_SET_ATTR_FAIL;
-       char* chars = _PyUnicode_AsString(value);
+       const char *chars = _PyUnicode_AsString(value);
 
        /* Allow for some logic brick control */
        CValue* tprop = self->GetProperty("Text");