Merge lp:~sil2100/compiz/fix_ftbfs_arm_boost into lp:compiz/0.9.9

Proposed by Łukasz Zemczak
Status: Merged
Approved by: Sam Spilsbury
Approved revision: 3467
Merged at revision: 3467
Proposed branch: lp:~sil2100/compiz/fix_ftbfs_arm_boost
Merge into: lp:compiz/0.9.9
Diff against target: 39 lines (+4/-4)
1 file modified
plugins/opengl/src/screen.cpp (+4/-4)
To merge this branch: bzr merge lp:~sil2100/compiz/fix_ftbfs_arm_boost
Reviewer Review Type Date Requested Status
Sam Spilsbury Approve
PS Jenkins bot continuous-integration Pending
Compiz Maintainers Pending
Review via email: mp+134079@code.launchpad.net

Commit message

Invalid parameter type for EGL function. Fix boost bind function madness for EGL. All these essentially should fix a FTBFS for arm*.

Description of the change

Please, if someone could check this and make sure it's done correctly!

- Problem:

Build failures for ARM (and other GLES configurations) since revision 3462 (http://bazaar.launchpad.net/~compiz-team/compiz/0.9.9/revision/3462). Boost issues and the like.

- Fix:

The GLES bind function handle requires an additional Display parameter. I tried adding it by intuition. There was also one signed -> unsigned type mismatch.

- Tests:

N/A

To post a comment you must log in.
Revision history for this message
Sam Spilsbury (smspillaz) wrote :

I was going to mention changing the boost::function signature in GLDoubleBuffer, but then I remembered that we didn't want to introduce a dependency on Display * within GLDoubleBuffer and DoubleBuffer generally, so passing it as a non-variable parameter to fufill the bound function signature is perfectly fine.

It is tested btw, by the DoubleBuffer tests :)

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'plugins/opengl/src/screen.cpp'
--- plugins/opengl/src/screen.cpp 2012-11-08 09:29:42 +0000
+++ plugins/opengl/src/screen.cpp 2012-11-13 11:38:40 +0000
@@ -281,7 +281,7 @@
281{281{
282namespace opengl282namespace opengl
283{283{
284void swapIntervalGLX (int interval)284void swapIntervalGLX (Display *d, int interval)
285{285{
286 // Docs: http://www.opengl.org/registry/specs/SGI/swap_control.txt286 // Docs: http://www.opengl.org/registry/specs/SGI/swap_control.txt
287 if (GL::swapInterval)287 if (GL::swapInterval)
@@ -324,7 +324,7 @@
324324
325int waitVSyncEGL (int wait,325int waitVSyncEGL (int wait,
326 int remainder,326 int remainder,
327 int *count)327 unsigned int *count)
328{328{
329 /* not supported */329 /* not supported */
330 return 0;330 return 0;
@@ -1795,7 +1795,7 @@
1795 const CompSize &s,1795 const CompSize &s,
1796 Window output) :1796 Window output) :
1797 GLDoubleBuffer (d, s,1797 GLDoubleBuffer (d, s,
1798 boost::bind (compiz::opengl::swapIntervalGLX, _1),1798 boost::bind (compiz::opengl::swapIntervalGLX, d, _1),
1799 boost::bind (compiz::opengl::waitVSyncGLX, _1, _2, _3)),1799 boost::bind (compiz::opengl::waitVSyncGLX, _1, _2, _3)),
1800 mOutput (output)1800 mOutput (output)
1801{1801{
@@ -1872,7 +1872,7 @@
1872 const CompSize &s,1872 const CompSize &s,
1873 EGLSurface const &surface) :1873 EGLSurface const &surface) :
1874 GLDoubleBuffer (d, s,1874 GLDoubleBuffer (d, s,
1875 boost::bind (compiz::opengl::swapIntervalEGL, _1),1875 boost::bind (compiz::opengl::swapIntervalEGL, d, _1),
1876 boost::bind (compiz::opengl::waitVSyncEGL, _1, _2, _3)),1876 boost::bind (compiz::opengl::waitVSyncEGL, _1, _2, _3)),
1877 mSurface (surface)1877 mSurface (surface)
1878{1878{

Subscribers

People subscribed via source and target branches