* [Buildroot] [PATCH v2 5/7] directfb: fix Blackfin.uclinux.org 2014R1 toolchain compile errors
2015-02-27 22:25 [Buildroot] [PATCH v2 1/7] directfb: bump version to 1.7.7 and add hash Peter Seiderer
` (2 preceding siblings ...)
2015-02-27 22:25 ` [Buildroot] [PATCH v2 4/7] directfb: add new TIFF option Peter Seiderer
@ 2015-02-27 22:25 ` Peter Seiderer
2015-02-27 22:25 ` [Buildroot] [PATCH v2 6/7] qt: fix directfb-1.7.7 compiler errors Peter Seiderer
` (2 subsequent siblings)
6 siblings, 0 replies; 13+ messages in thread
From: Peter Seiderer @ 2015-02-27 22:25 UTC (permalink / raw)
To: buildroot
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
.../0005-workaround-missing-va_copy-bug.patch | 34 +++
...ion-constructor-error-for-legacy-c-compil.patch | 227 +++++++++++++++++++++
...-missing-pthread_getattr_np-linking-error.patch | 36 ++++
3 files changed, 297 insertions(+)
create mode 100644 package/directfb/0005-workaround-missing-va_copy-bug.patch
create mode 100644 package/directfb/0006-Fix-conversion-constructor-error-for-legacy-c-compil.patch
create mode 100644 package/directfb/0007-Fix-missing-pthread_getattr_np-linking-error.patch
diff --git a/package/directfb/0005-workaround-missing-va_copy-bug.patch b/package/directfb/0005-workaround-missing-va_copy-bug.patch
new file mode 100644
index 0000000..189800d
--- /dev/null
+++ b/package/directfb/0005-workaround-missing-va_copy-bug.patch
@@ -0,0 +1,34 @@
+From 62585b44ec5a811b4c7a8088f91b635dda1a4dbd Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Thu, 26 Feb 2015 22:46:59 +0100
+Subject: [PATCH] workaround missing va_copy bug
+
+See [1] for reference.
+
+[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36799
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ lib/direct/String.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/lib/direct/String.cpp b/lib/direct/String.cpp
+index a7558ba..eca4664 100644
+--- a/lib/direct/String.cpp
++++ b/lib/direct/String.cpp
+@@ -117,8 +117,11 @@ String::PrintF( const char *format, va_list args, size_t stack_buffer )
+
+ #ifdef __GNUC__
+ va_list ap2;
+-
++#ifdef va_copy
+ va_copy( ap2, args );
++#else
++ __va_copy( ap2, args );
++#endif
+ len = direct_vsnprintf( buf, sizeof(buf), format, ap2 );
+ va_end( ap2 );
+ #else
+--
+2.1.4
+
diff --git a/package/directfb/0006-Fix-conversion-constructor-error-for-legacy-c-compil.patch b/package/directfb/0006-Fix-conversion-constructor-error-for-legacy-c-compil.patch
new file mode 100644
index 0000000..8fb54da
--- /dev/null
+++ b/package/directfb/0006-Fix-conversion-constructor-error-for-legacy-c-compil.patch
@@ -0,0 +1,227 @@
+From 6284abc8309542e0e6b845fd41624c2be7de0515 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Thu, 26 Feb 2015 22:48:57 +0100
+Subject: [PATCH] Fix conversion/constructor error for legacy c++ compiler.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes the following compile error with legacy c++
+compiler, e.g. bfin-uclinux-c++ (ADI-2014R1-RC2) 4.3.5:
+
+error: too many initializers for ?DFBRectangle?
+error: conversion from ?int? to non-scalar type ?DFBRectangle? requested
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ include/directfb_util.h | 8 ++++++++
+ src/core/CoreGraphicsStateClient.cpp | 4 ++--
+ src/core/Renderer.cpp | 2 +-
+ src/gfx/generic/GenefxEngine.cpp | 6 +++---
+ src/gfx/util.cpp | 16 ++++++++--------
+ tests/coretest_task.cpp | 6 +++---
+ tests/coretest_task_fillrect.cpp | 2 +-
+ 7 files changed, 26 insertions(+), 18 deletions(-)
+
+diff --git a/include/directfb_util.h b/include/directfb_util.h
+index 3734248..479c5de 100644
+--- a/include/directfb_util.h
++++ b/include/directfb_util.h
+@@ -103,7 +103,11 @@ void DIRECTFB_API dfb_rectangle_union ( DFBRectangle *rect1,
+ #define DFB_RECTANGLE_INIT_FROM_DIMENSION_VALS(w,h) (DFBRectangle){ DFB_RECTANGLE_VALS_FROM_DIMENSION_VALS(w,h) }
+
+ #define DFB_RECTANGLE_VALS_FROM_REGION(r) (r)->x1, (r)->y1, (r)->x2-(r)->x1+1, (r)->y2-(r)->y1+1
++#ifdef __cplusplus
++#define DFB_RECTANGLE_INIT_FROM_REGION(r) (DFBRectangle_C){ DFB_RECTANGLE_VALS_FROM_REGION(r) }
++#else
+ #define DFB_RECTANGLE_INIT_FROM_REGION(r) (DFBRectangle){ DFB_RECTANGLE_VALS_FROM_REGION(r) }
++#endif
+
+ #define DFB_RECTANGLE_VALS_FROM_REGION_TRANSLATED(r,x,y) (r)->x1 + (x), (r)->y1 + (y), (r)->x2-(r)->x1+1, (r)->y2-(r)->y1+1
+ #define DFB_RECTANGLE_INIT_FROM_REGION_TRANSLATED(r,x,y) (DFBRectangle){ DFB_RECTANGLE_VALS_FROM_REGION_TRANSLATED(r,x,y) }
+@@ -144,7 +148,11 @@ void DIRECTFB_API dfb_rectangle_union ( DFBRectangle *rect1,
+ #define DFB_REGION_INIT_FROM_RECTANGLE(r) (DFBRegion){ DFB_REGION_VALS_FROM_RECTANGLE(r) }
+
+ #define DFB_REGION_VALS_FROM_RECTANGLE_VALS(x,y,w,h) (x), (y), (x)+(w)-1, (y)+(h)-1
++#ifdef __cplusplus
++#define DFB_REGION_INIT_FROM_RECTANGLE_VALS(x,y,w,h) (DFBRegion_C){ DFB_REGION_VALS_FROM_RECTANGLE_VALS(x,y,w,h) }
++#else
+ #define DFB_REGION_INIT_FROM_RECTANGLE_VALS(x,y,w,h) (DFBRegion){ DFB_REGION_VALS_FROM_RECTANGLE_VALS(x,y,w,h) }
++#endif
+
+ #define DFB_REGION_VALS_FROM_BOX(b) (b)->x1, (b)->y1, (b)->x2-1, (b)->y2-1
+ #define DFB_REGION_INIT_FROM_BOX(b) (DFBRegion){ DFB_REGION_VALS_FROM_BOX(b) }
+diff --git a/src/core/CoreGraphicsStateClient.cpp b/src/core/CoreGraphicsStateClient.cpp
+index 5d46f0e..3a44a6d 100644
+--- a/src/core/CoreGraphicsStateClient.cpp
++++ b/src/core/CoreGraphicsStateClient.cpp
+@@ -1137,7 +1137,7 @@ CoreGraphicsStateClient_StretchBlit( CoreGraphicsStateClient *client,
+ else {
+ if (!dfb_config->call_nodirect && (dfb_core_is_master( client->core ) || !fusion_config->secure_fusion)) {
+ if (num == 1 && srects[0].w == drects[0].w && srects[0].h == drects[0].h) {
+- DFBPoint point = { drects[0].x, drects[0].y };
++ DFBPoint point = (DFBPoint_C){ drects[0].x, drects[0].y };
+
+ // FIXME: will overwrite rects, points
+ dfb_gfxcard_batchblit( (DFBRectangle*) srects, &point, 1, client->state );
+@@ -1155,7 +1155,7 @@ CoreGraphicsStateClient_StretchBlit( CoreGraphicsStateClient *client,
+ if (num == 1 && srects[0].w == drects[0].w && srects[0].h == drects[0].h) {
+ CoreGraphicsStateClient_Update( client, DFXL_BLIT, client->state );
+
+- DFBPoint point = { drects[0].x, drects[0].y };
++ DFBPoint point = (DFBPoint_C){ drects[0].x, drects[0].y };
+ ret = requestor->Blit( srects, &point, 1 );
+ if (ret)
+ return ret;
+diff --git a/src/core/Renderer.cpp b/src/core/Renderer.cpp
+index 3811b09..63d4c09 100644
+--- a/src/core/Renderer.cpp
++++ b/src/core/Renderer.cpp
+@@ -2844,7 +2844,7 @@ Renderer::StretchBlit( const DFBRectangle *srects,
+
+ if (num == 1) {
+ if (srects[0].w == drects[0].w && srects[0].h == drects[0].h) {
+- DFBPoint point = { drects[0].x, drects[0].y };
++ DFBPoint point = (DFBPoint_C){ drects[0].x, drects[0].y };
+ Primitives::Blits primitives( srects, &point, 1, DFXL_BLIT );
+
+ render( &primitives );
+diff --git a/src/gfx/generic/GenefxEngine.cpp b/src/gfx/generic/GenefxEngine.cpp
+index 84615ec..5b9487b 100644
+--- a/src/gfx/generic/GenefxEngine.cpp
++++ b/src/gfx/generic/GenefxEngine.cpp
+@@ -1042,7 +1042,7 @@ GenefxTask::Run()
+
+ D_DEBUG_AT( DirectFB_GenefxTask, " -> %4d,%4d-%4dx%4d\n", x, y, w, h );
+
+- DFBRectangle rect = {
++ DFBRectangle rect = (DFBRectangle_C){
+ x, y, w, h
+ };
+
+@@ -1070,7 +1070,7 @@ GenefxTask::Run()
+
+ D_DEBUG_AT( DirectFB_GenefxTask, " -> %4d,%4d-%4dx%4d\n", x1, y1, x2, y2 );
+
+- DFBRegion line = {
++ DFBRegion line = (DFBRegion_C){
+ x1, y1, x2, y2
+ };
+
+@@ -1100,7 +1100,7 @@ GenefxTask::Run()
+
+ D_DEBUG_AT( DirectFB_GenefxTask, " -> %4d,%4d-%4dx%4d -> %4d,%4d\n", x, y, w, h, dx, dy );
+
+- DFBRectangle rect = {
++ DFBRectangle rect = (DFBRectangle_C){
+ x, y, w, h
+ };
+
+diff --git a/src/gfx/util.cpp b/src/gfx/util.cpp
+index 40032bc..0acc0b1 100644
+--- a/src/gfx/util.cpp
++++ b/src/gfx/util.cpp
+@@ -148,7 +148,7 @@ dfb_gfx_copy_stereo( CoreSurface *source,
+ int y,
+ bool from_back )
+ {
+- DFBRectangle sourcerect = { 0, 0, source->config.size.w, source->config.size.h };
++ DFBRectangle sourcerect = (DFBRectangle_C){ 0, 0, source->config.size.w, source->config.size.h };
+
+ StateClient *client = StateClient::Get();
+
+@@ -165,13 +165,13 @@ dfb_gfx_copy_stereo( CoreSurface *source,
+
+ if (rect) {
+ if (dfb_rectangle_intersect( &sourcerect, rect )) {
+- DFBPoint point = { x + sourcerect.x - rect->x, y + sourcerect.y - rect->y };
++ DFBPoint point = (DFBPoint_C){ x + sourcerect.x - rect->x, y + sourcerect.y - rect->y };
+
+ CoreGraphicsStateClient_Blit( &client->client, &sourcerect, &point, 1 );
+ }
+ }
+ else {
+- DFBPoint point = { x, y };
++ DFBPoint point = (DFBPoint_C){ x, y };
+
+ CoreGraphicsStateClient_Blit( &client->client, &sourcerect, &point, 1 );
+ }
+@@ -188,7 +188,7 @@ dfb_gfx_copy_stereo( CoreSurface *source,
+ void
+ dfb_gfx_clear( CoreSurface *surface, CoreSurfaceBufferRole role )
+ {
+- DFBRectangle rect = { 0, 0, surface->config.size.w, surface->config.size.h };
++ DFBRectangle rect = (DFBRectangle_C){ 0, 0, surface->config.size.w, surface->config.size.h };
+
+ StateClient *client = StateClient::Get();
+
+@@ -230,8 +230,8 @@ void dfb_gfx_stretch_stereo( CoreSurface *source,
+ const DFBRectangle *drect,
+ bool from_back )
+ {
+- DFBRectangle sourcerect = { 0, 0, source->config.size.w, source->config.size.h };
+- DFBRectangle destrect = { 0, 0, destination->config.size.w, destination->config.size.h };
++ DFBRectangle sourcerect = (DFBRectangle_C){ 0, 0, source->config.size.w, source->config.size.h };
++ DFBRectangle destrect = (DFBRectangle_C){ 0, 0, destination->config.size.w, destination->config.size.h };
+
+ if (srect) {
+ if (!dfb_rectangle_intersect( &sourcerect, srect ))
+@@ -293,7 +293,7 @@ dfb_gfx_copy_regions_stereo( CoreSurface *source,
+ int y )
+ {
+ unsigned int i, n = 0;
+- DFBRectangle rect = { 0, 0, source->config.size.w, source->config.size.h };
++ DFBRectangle rect = (DFBRectangle_C){ 0, 0, source->config.size.w, source->config.size.h };
+ DFBRectangle rects[num];
+ DFBPoint points[num];
+
+@@ -350,7 +350,7 @@ dfb_gfx_copy_regions_client( CoreSurface *source,
+ CoreGraphicsStateClient *_client )
+ {
+ unsigned int i, n = 0;
+- DFBRectangle rect = { 0, 0, source->config.size.w, source->config.size.h };
++ DFBRectangle rect = (DFBRectangle_C){ 0, 0, source->config.size.w, source->config.size.h };
+ DFBRectangle rects[num];
+ DFBPoint points[num];
+ CoreGraphicsStateClient *client = _client ? _client : &StateClient::Get()->client;
+diff --git a/tests/coretest_task.cpp b/tests/coretest_task.cpp
+index cbbde0d..b74591b 100644
+--- a/tests/coretest_task.cpp
++++ b/tests/coretest_task.cpp
+@@ -219,17 +219,17 @@ main( int argc, char *argv[] )
+ dfb_state_set_color( &state, &color );
+
+
+- DFBRectangle rect = {
++ DFBRectangle rect = (DFBRectangle_C){
+ rand()%100, rand()%100, rand()%100, rand()%100
+ };
+
+ renderer->FillRectangles( &rect, 1 );
+ }
+
+- DFBRectangle rect = {
++ DFBRectangle rect = (DFBRectangle_C){
+ rand()%100, rand()%100, rand()%100, rand()%100
+ };
+- DFBPoint point = {
++ DFBPoint point = (DFBPoint_C){
+ rand()%100, rand()%100
+ };
+ renderer->Blit( &rect, &point, 1 );
+diff --git a/tests/coretest_task_fillrect.cpp b/tests/coretest_task_fillrect.cpp
+index 1829a12..796a535 100644
+--- a/tests/coretest_task_fillrect.cpp
++++ b/tests/coretest_task_fillrect.cpp
+@@ -220,7 +220,7 @@ main( int argc, char *argv[] )
+ dfb_state_set_color( &state, &color );
+
+
+- DFBRectangle rect = {
++ DFBRectangle rect = (DFBRectangle_C){
+ (u8)rand()%100, (u8)rand()%100, (u8)rand()%100, (u8)rand()%100
+ };
+
+--
+2.1.4
+
diff --git a/package/directfb/0007-Fix-missing-pthread_getattr_np-linking-error.patch b/package/directfb/0007-Fix-missing-pthread_getattr_np-linking-error.patch
new file mode 100644
index 0000000..57378b0
--- /dev/null
+++ b/package/directfb/0007-Fix-missing-pthread_getattr_np-linking-error.patch
@@ -0,0 +1,36 @@
+From 246ae872f8c2e4b597b7518236b2f8abda63b69d Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Thu, 26 Feb 2015 23:16:16 +0100
+Subject: [PATCH] Fix missing pthread_getattr_np linking error.
+
+Disable thread attribute read back in case of
+uclibc.
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ lib/direct/os/linux/glibc/thread.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/lib/direct/os/linux/glibc/thread.c b/lib/direct/os/linux/glibc/thread.c
+index c3cf92c..2a3df80 100644
+--- a/lib/direct/os/linux/glibc/thread.c
++++ b/lib/direct/os/linux/glibc/thread.c
+@@ -152,12 +152,15 @@ direct_thread_init( DirectThread *thread )
+
+ pthread_attr_destroy( &attr );
+
++/* versions of uClibc 0.9.32 and below do not have pthread_getattr_np */
++#if !defined(__UCLIBC__)
+ /* Read (back) value. */
+ pthread_getattr_np( thread->handle.thread, &attr );
+ pthread_attr_getstacksize( &attr, &thread->stack_size );
+ pthread_attr_getschedparam( &attr, ¶m );
+ thread->priority = param.sched_priority;
+ pthread_attr_destroy( &attr );
++#endif
+
+ return DR_OK;
+ }
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 13+ messages in thread* [Buildroot] [PATCH v2 6/7] qt: fix directfb-1.7.7 compiler errors
2015-02-27 22:25 [Buildroot] [PATCH v2 1/7] directfb: bump version to 1.7.7 and add hash Peter Seiderer
` (3 preceding siblings ...)
2015-02-27 22:25 ` [Buildroot] [PATCH v2 5/7] directfb: fix Blackfin.uclinux.org 2014R1 toolchain compile errors Peter Seiderer
@ 2015-02-27 22:25 ` Peter Seiderer
2015-02-27 22:25 ` [Buildroot] [PATCH v2 7/7] directfb-examples: bump version to 1.7.0 and add hash Peter Seiderer
2015-02-28 10:37 ` [Buildroot] [PATCH v2 1/7] directfb: bump version to 1.7.7 " Thomas Petazzoni
6 siblings, 0 replies; 13+ messages in thread
From: Peter Seiderer @ 2015-02-27 22:25 UTC (permalink / raw)
To: buildroot
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
...ion-constructor-error-for-legacy-c-compil.patch | 163 +++++++++++++++++++++
1 file changed, 163 insertions(+)
create mode 100644 package/qt/0007-Fix-conversion-constructor-error-for-legacy-c-compil.patch
diff --git a/package/qt/0007-Fix-conversion-constructor-error-for-legacy-c-compil.patch b/package/qt/0007-Fix-conversion-constructor-error-for-legacy-c-compil.patch
new file mode 100644
index 0000000..d7d387a
--- /dev/null
+++ b/package/qt/0007-Fix-conversion-constructor-error-for-legacy-c-compil.patch
@@ -0,0 +1,163 @@
+From ea46f47fb3c475ba2d7581c15185b8d43e63b8c2 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Fri, 27 Feb 2015 21:30:52 +0100
+Subject: [PATCH] Fix conversion/constructor error for legacy c++ compiler.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes the following compile error with legacy c++ compiler:
+
+error: in C++98 ?blitRect? must be initialized by constructor, not by ?{...}?
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp | 14 +++++++-------
+ src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp | 6 +++---
+ src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp | 6 +++---
+ src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp | 2 +-
+ 4 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp
+index 876d0c2..ed69386 100644
+--- a/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp
++++ b/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp
+@@ -942,7 +942,7 @@ void QDirectFBPaintEngine::drawBufferSpan(const uint *buffer, int bufsize,
+ IDirectFBSurface *src = d->surfaceCache->getSurface(buffer, bufsize);
+ // ### how does this play with setDFBColor
+ src->SetColor(src, 0, 0, 0, const_alpha);
+- const DFBRectangle rect = { 0, 0, length, 1 };
++ const DFBRectangle rect = (DFBRectangle_C){ 0, 0, length, 1 };
+ d->surface->Blit(d->surface, src, &rect, x, y);
+ }
+
+@@ -1223,14 +1223,14 @@ void QDirectFBPaintEnginePrivate::blit(const QRectF &dest, IDirectFBSurface *s,
+ const QRect dr = engine->state()->matrix.mapRect(dest).toRect();
+ if (dr.isEmpty())
+ return;
+- const DFBRectangle sRect = { sr.x(), sr.y(), sr.width(), sr.height() };
++ const DFBRectangle sRect = (DFBRectangle_C){ sr.x(), sr.y(), sr.width(), sr.height() };
+ DFBResult result;
+
+ if (dr.size() == sr.size()) {
+ result = surface->Blit(surface, s, &sRect, dr.x(), dr.y());
+ } else {
+ Q_ASSERT(supportsStretchBlit());
+- const DFBRectangle dRect = { dr.x(), dr.y(), dr.width(), dr.height() };
++ const DFBRectangle dRect = (DFBRectangle_C){ dr.x(), dr.y(), dr.width(), dr.height() };
+ result = surface->StretchBlit(surface, s, &sRect, &dRect);
+ }
+ if (result != DFB_OK)
+@@ -1261,7 +1261,7 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix
+ if (newClip.isNull())
+ return;
+
+- const DFBRegion clip = {
++ const DFBRegion clip = (DFBRegion_C){
+ newClip.x(),
+ newClip.y(),
+ newClip.right(),
+@@ -1295,7 +1295,7 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix
+ while (y <= destinationRect.bottom()) {
+ qreal x = startX;
+ while (x <= destinationRect.right()) {
+- const DFBRectangle destination = { qRound(x), qRound(y), mappedSize.width(), mappedSize.height() };
++ const DFBRectangle destination = (DFBRectangle_C){ qRound(x), qRound(y), (int)mappedSize.width(), (int)mappedSize.height() };
+ surface->StretchBlit(surface, sourceSurface, 0, &destination);
+ x += mappedSize.width();
+ }
+@@ -1337,7 +1337,7 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix
+ if (currentClip.isEmpty()) {
+ surface->SetClip(surface, 0);
+ } else {
+- const DFBRegion clip = {
++ const DFBRegion clip = (DFBRegion_C){
+ currentClip.x(),
+ currentClip.y(),
+ currentClip.right(),
+@@ -1356,7 +1356,7 @@ void QDirectFBPaintEnginePrivate::updateClip()
+ surface->SetClip(surface, NULL);
+ clipType = NoClip;
+ } else if (clipData->hasRectClip) {
+- const DFBRegion r = {
++ const DFBRegion r = (DFBRegion_C){
+ clipData->clipRect.x(),
+ clipData->clipRect.y(),
+ clipData->clipRect.right(),
+diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp
+index 412e684..c59c47d 100644
+--- a/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp
++++ b/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp
+@@ -363,7 +363,7 @@ void QDirectFBPixmapData::copy(const QPixmapData *data, const QRect &rect)
+ } else {
+ dfbSurface->SetBlittingFlags(dfbSurface, DSBLIT_NOFX);
+ }
+- const DFBRectangle blitRect = { rect.x(), rect.y(),
++ const DFBRectangle blitRect = (DFBRectangle_C){ rect.x(), rect.y(),
+ rect.width(), rect.height() };
+ w = rect.width();
+ h = rect.height();
+@@ -465,7 +465,7 @@ QPixmap QDirectFBPixmapData::transformed(const QTransform &transform,
+ }
+ data->dfbSurface->SetBlittingFlags(data->dfbSurface, flags);
+
+- const DFBRectangle destRect = { 0, 0, size.width(), size.height() };
++ const DFBRectangle destRect = (DFBRectangle_C){ 0, 0, size.width(), size.height() };
+ data->dfbSurface->StretchBlit(data->dfbSurface, dfbSurface, 0, &destRect);
+ data->w = size.width();
+ data->h = size.height();
+@@ -551,7 +551,7 @@ bool QDirectFBPixmapData::scroll(int dx, int dy, const QRect &rect)
+ return false;
+ }
+
+- const DFBRectangle source = { rect.x(), rect.y(), rect.width(), rect.height() };
++ const DFBRectangle source = (DFBRectangle_C){ rect.x(), rect.y(), rect.width(), rect.height() };
+ result = dfbSurface->Blit(dfbSurface, dfbSurface, &source, source.x + dx, source.y + dy);
+ if (result != DFB_OK) {
+ DirectFBError("QDirectFBPixmapData::scroll", result);
+diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp
+index eab9580..d26e5bf 100644
+--- a/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp
++++ b/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp
+@@ -1635,7 +1635,7 @@ void QDirectFBScreen::solidFill(const QColor &color, const QRegion ®ion)
+ static inline void clearRect(IDirectFBSurface *surface, const QColor &color, const QRect &rect)
+ {
+ Q_ASSERT(surface);
+- const DFBRegion region = { rect.left(), rect.top(), rect.right(), rect.bottom() };
++ const DFBRegion region = (DFBRegion_C){ rect.left(), rect.top(), rect.right(), rect.bottom() };
+ // could just reinterpret_cast this to a DFBRegion
+ surface->SetClip(surface, ®ion);
+ surface->Clear(surface, color.red(), color.green(), color.blue(), color.alpha());
+@@ -1716,14 +1716,14 @@ void QDirectFBScreen::flipSurface(IDirectFBSurface *surface, DFBSurfaceFlipFlags
+ const DFBSurfaceFlipFlags nonWaitFlags = flipFlags & ~DSFLIP_WAIT;
+ for (int i=0; i<rects.size(); ++i) {
+ const QRect &r = rects.at(i);
+- const DFBRegion dfbReg = { r.x() + offset.x(), r.y() + offset.y(),
++ const DFBRegion dfbReg = (DFBRegion_C){ r.x() + offset.x(), r.y() + offset.y(),
+ r.right() + offset.x(),
+ r.bottom() + offset.y() };
+ surface->Flip(surface, &dfbReg, i + 1 < rects.size() ? nonWaitFlags : flipFlags);
+ }
+ } else {
+ const QRect r = region.boundingRect();
+- const DFBRegion dfbReg = { r.x() + offset.x(), r.y() + offset.y(),
++ const DFBRegion dfbReg = (DFBRegion_C){ r.x() + offset.x(), r.y() + offset.y(),
+ r.right() + offset.x(),
+ r.bottom() + offset.y() };
+ surface->Flip(surface, &dfbReg, flipFlags);
+diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp
+index 4dff907..25ad06b 100644
+--- a/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp
++++ b/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp
+@@ -333,7 +333,7 @@ bool QDirectFBWindowSurface::scroll(const QRegion ®ion, int dx, int dy)
+ }
+ dfbSurface->SetBlittingFlags(dfbSurface, DSBLIT_NOFX);
+ const QRect r = region.boundingRect();
+- const DFBRectangle rect = { r.x(), r.y(), r.width(), r.height() };
++ const DFBRectangle rect = (DFBRectangle_C){ r.x(), r.y(), r.width(), r.height() };
+ dfbSurface->Blit(dfbSurface, dfbSurface, &rect, r.x() + dx, r.y() + dy);
+ return true;
+ }
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 13+ messages in thread