From 4efb58549e378c0e55f6826e42735447cdeee18e Mon Sep 17 00:00:00 2001 From: "minho.sun" Date: Thu, 9 Feb 2017 10:25:47 +0900 Subject: [PATCH] Revert "[Tizen] Fix undefined behaviour due to strict-aliasing." This reverts commit abfc79dfe46291b4a66333135634d202bd6c7711. Change-Id: I714cd8c2288886962b84a2891fa314e34a805ef3 --- dali/internal/update/manager/geometry-batcher.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/dali/internal/update/manager/geometry-batcher.cpp b/dali/internal/update/manager/geometry-batcher.cpp index 2ec048e..2409c95 100644 --- a/dali/internal/update/manager/geometry-batcher.cpp +++ b/dali/internal/update/manager/geometry-batcher.cpp @@ -63,18 +63,18 @@ struct TransformVertexBufferData template void TransformVertexBuffer( TransformVertexBufferData& data ) { - const char* source = reinterpret_cast( data.sourcePtr ); - char* destination = reinterpret_cast( data.destinationPtr ); + const PositionType* source = reinterpret_cast( data.sourcePtr ); + PositionType* destination = reinterpret_cast( data.destinationPtr ); size_t componentSize = data.componentSize ? data.componentSize : sizeof( PositionType ); - const char* sourceEnd = source + data.vertexCount*componentSize; + const void* sourceEnd = (reinterpret_cast( source ) + ( data.vertexCount*componentSize )); for( ; source < sourceEnd; - destination += componentSize, - source += componentSize + *(reinterpret_cast( &destination )) += componentSize, + *(reinterpret_cast( &source )) += componentSize ) { - Dali::Internal::MultiplyVectorBySize( *reinterpret_cast(destination), *reinterpret_cast(source), data.size ); - Dali::Internal::MultiplyVectorByMatrix4( *reinterpret_cast(destination), data.transform, *reinterpret_cast(destination) ); + Dali::Internal::MultiplyVectorBySize( *destination, *source, data.size ); + Dali::Internal::MultiplyVectorByMatrix4( *destination, data.transform, *destination ); } } -- 2.7.4