This breaks MSVC compiling:

source\blender\blenlib\BLI_endian_switch.h(39) : error C2061: 
Syntaxfehler: Beze
ichner 'ATTR_ENDIAN_SWITCH'
source\blender\blenlib\BLI_endian_switch.h(39) : error C2059: 
Syntaxfehler: ';'
source\blender\blenlib\BLI_endian_switch.h(40) : error C2061: 
Syntaxfehler: Beze
ichner 'ATTR_ENDIAN_SWITCH'
source\blender\blenlib\BLI_endian_switch.h(40) : error C2059: 
Syntaxfehler: ';'
source\blender\blenlib\BLI_endian_switch.h(41) : error C2061: 
Syntaxfehler: Beze
ichner 'ATTR_ENDIAN_SWITCH'
source\blender\blenlib\BLI_endian_switch.h(41) : error C2059: 
Syntaxfehler: ';'
source\blender\blenlib\BLI_endian_switch.h(42) : error C2061: 
Syntaxfehler: Beze
ichner 'ATTR_ENDIAN_SWITCH'
source\blender\blenlib\BLI_endian_switch.h(42) : error C2059: 
Syntaxfehler: ';'
source\blender\blenlib\BLI_endian_switch.h(43) : error C2061: 
Syntaxfehler: Beze
ichner 'ATTR_ENDIAN_SWITCH'

Am 17.09.2012 07:31, schrieb Campbell Barton:
> Revision: 50684
>            
> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50684
> Author:   campbellbarton
> Date:     2012-09-17 05:31:41 +0000 (Mon, 17 Sep 2012)
> Log Message:
> -----------
> add endian switching to mask shape key loading (loading mask animations 
> between big/little endian systems would break), also set attributes to 
> BLI_endian_switch_* functions.
>
> Modified Paths:
> --------------
>      trunk/blender/source/blender/blenlib/BLI_endian_switch.h
>      trunk/blender/source/blender/blenloader/intern/readfile.c
>
> Modified: trunk/blender/source/blender/blenlib/BLI_endian_switch.h
> ===================================================================
> --- trunk/blender/source/blender/blenlib/BLI_endian_switch.h  2012-09-17 
> 04:29:43 UTC (rev 50683)
> +++ trunk/blender/source/blender/blenlib/BLI_endian_switch.h  2012-09-17 
> 05:31:41 UTC (rev 50684)
> @@ -27,16 +27,36 @@
>    *  \ingroup bli
>    */
>   
> -#include "BLI_endian_switch_inline.h"
> +#ifdef __GNUC__
> +#  define ATTR_ENDIAN_SWITCH \
> +     __attribute__((nonnull(1))) \
> +     __attribute__((pure))
> +#else
> +#  define ATTR_NONULL
> +#endif
>   
> +/* BLI_endian_switch_inline.h */
> +BLI_INLINE void BLI_endian_switch_int16(short *val)                       
> ATTR_ENDIAN_SWITCH;
> +BLI_INLINE void BLI_endian_switch_uint16(unsigned short *val)             
> ATTR_ENDIAN_SWITCH;
> +BLI_INLINE void BLI_endian_switch_int32(int *val)                         
> ATTR_ENDIAN_SWITCH;
> +BLI_INLINE void BLI_endian_switch_uint32(unsigned int *val)               
> ATTR_ENDIAN_SWITCH;
> +BLI_INLINE void BLI_endian_switch_float(float *val)                       
> ATTR_ENDIAN_SWITCH;
> +BLI_INLINE void BLI_endian_switch_int64(int64_t *val)                     
> ATTR_ENDIAN_SWITCH;
> +BLI_INLINE void BLI_endian_switch_uint64(uint64_t *val)                   
> ATTR_ENDIAN_SWITCH;
> +BLI_INLINE void BLI_endian_switch_double(double *val)                     
> ATTR_ENDIAN_SWITCH;
> +
>   /* endian_switch.c */
> -void BLI_endian_switch_int16_array(short *val, const int size);
> -void BLI_endian_switch_uint16_array(unsigned short *val, const int size);
> -void BLI_endian_switch_int32_array(int *val, const int size);
> -void BLI_endian_switch_uint32_array(unsigned int *val, const int size);
> -void BLI_endian_switch_float_array(float *val, const int size);
> -void BLI_endian_switch_int64_array(int64_t *val, const int size);
> -void BLI_endian_switch_uint64_array(uint64_t *val, const int size);
> -void BLI_endian_switch_double_array(double *val, const int size);
> +void BLI_endian_switch_int16_array(short *val, const int size)            
> ATTR_ENDIAN_SWITCH;
> +void BLI_endian_switch_uint16_array(unsigned short *val, const int size)  
> ATTR_ENDIAN_SWITCH;
> +void BLI_endian_switch_int32_array(int *val, const int size)              
> ATTR_ENDIAN_SWITCH;
> +void BLI_endian_switch_uint32_array(unsigned int *val, const int size)    
> ATTR_ENDIAN_SWITCH;
> +void BLI_endian_switch_float_array(float *val, const int size)            
> ATTR_ENDIAN_SWITCH;
> +void BLI_endian_switch_int64_array(int64_t *val, const int size)          
> ATTR_ENDIAN_SWITCH;
> +void BLI_endian_switch_uint64_array(uint64_t *val, const int size)        
> ATTR_ENDIAN_SWITCH;
> +void BLI_endian_switch_double_array(double *val, const int size)          
> ATTR_ENDIAN_SWITCH;
>   
> +#include "BLI_endian_switch_inline.h"
> +
> +#undef ATTR_ENDIAN_SWITCH
> +
>   #endif  /* __BLI_ENDIAN_SWITCH_H__ */
>
> Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
> ===================================================================
> --- trunk/blender/source/blender/blenloader/intern/readfile.c 2012-09-17 
> 04:29:43 UTC (rev 50683)
> +++ trunk/blender/source/blender/blenloader/intern/readfile.c 2012-09-17 
> 05:31:41 UTC (rev 50684)
> @@ -6289,6 +6289,14 @@
>   
>               for (masklay_shape = masklay->splines_shapes.first; 
> masklay_shape; masklay_shape = masklay_shape->next) {
>                       masklay_shape->data = newdataadr(fd, 
> masklay_shape->data);
> +
> +                     if (masklay_shape->tot_vert) {
> +                             if (fd->flags & FD_FLAGS_SWITCH_ENDIAN) {
> +                                     
> BLI_endian_switch_float_array(masklay_shape->data,
> +                                                                   
> masklay_shape->tot_vert * sizeof(float) * MASK_OBJECT_SHAPE_ELEM_SIZE);
> +
> +                             }
> +                     }
>               }
>   
>               masklay->act_spline = newdataadr(fd, masklay->act_spline);
>
> _______________________________________________
> Bf-blender-cvs mailing list
> bf-blender-...@blender.org
> http://lists.blender.org/mailman/listinfo/bf-blender-cvs


-- 
Thomas Dinges
Blender Developer, Artist and Musician

www.dingto.org

_______________________________________________
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers

Reply via email to