/home/oszi/WebKit/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp:894:59: warning: cast from 'char*' to 'uint32_t* {aka unsigned int*}' increases required alignment of target type [-Wcast-align] void BitmapTextureGL::updateContents(const void* srcData, const IntRect& targetRect, const IntPoint& sourceOffset, int bytesPerLine, UpdateContentsFlag updateContentsFlag) { .... char* data = reinterpret_cast<char*>(const_cast<void*>(srcData)); ... swizzleBGRAToRGBA(reinterpret_cast<uint32_t*>(data), IntRect(adjustedSourceOffset, targetRect.size()), bytesPerLine / bytesPerPixel); < ---- line 894 ... } ... void BitmapTextureGL::updateContents(Image* image, const IntRect& targetRect, const IntPoint& offset, UpdateContentsFlag updateContentsFlag) { if (!image) return; NativeImagePtr frameImage = image->nativeImageForCurrentFrame(); if (!frameImage) return; int bytesPerLine; const char* imageData; #if PLATFORM(QT) QImage qImage = frameImage->toImage(); imageData = reinterpret_cast<const char*>(qImage.constBits()); bytesPerLine = qImage.bytesPerLine(); #elif USE(CAIRO) cairo_surface_t* surface = frameImage.get(); imageData = reinterpret_cast<const char*>(cairo_image_surface_get_data(surface)); bytesPerLine = cairo_image_surface_get_stride(surface); #endif updateContents(imageData, targetRect, offset, bytesPerLine, updateContentsFlag); < ------ call! } ... The problematic data is come from cairo_image_surface_get_data(surface) or qImage.constBits(). Both of them contains BGRA data, so I think we can assume that they are 32 bit aligned.
Created attachment 205813 [details] Patch
ping for Qt and Cairo review.
Comment on attachment 205813 [details] Patch Clearing flags on attachment: 205813 Committed r152283: <http://trac.webkit.org/changeset/152283>
All reviewed patches have been landed. Closing bug.