Merge lp:~smspillaz/compcomm-plugins-main/compcomm-plugins-main.fix_976469_abisafe into lp:~compiz/compcomm-plugins-main/ubuntu

Proposed by Sam Spilsbury
Status: Rejected
Rejected by: Sam Spilsbury
Proposed branch: lp:~smspillaz/compcomm-plugins-main/compcomm-plugins-main.fix_976469_abisafe
Merge into: lp:~compiz/compcomm-plugins-main/ubuntu
Diff against target: 229 lines (+209/-0)
3 files modified
debian/changelog (+7/-0)
debian/patches/fix_976469_abisafe.patch (+201/-0)
debian/patches/series (+1/-0)
To merge this branch: bzr merge lp:~smspillaz/compcomm-plugins-main/compcomm-plugins-main.fix_976469_abisafe
Reviewer Review Type Date Requested Status
compiz packagers Pending
Review via email: mp+102024@code.launchpad.net

Description of the change

The fix for 976469 broke the ABI to compiz-plugins-extra, backed out the change and replaced it with an abi safe one.

To post a comment you must log in.

Unmerged revisions

275. By Sam Spilsbury

* debian/patches/fix_976469_abisafe.patch:
  - Fixes LP #976469 without breaking the ABI

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2012-04-12 07:19:09 +0000
3+++ debian/changelog 2012-04-15 02:35:33 +0000
4@@ -1,3 +1,10 @@
5+compiz-plugins-main (1:0.9.7.0~bzr19-0ubuntu11) precise; urgency=low
6+
7+ * debian/patches/fix_976469_abisafe.patch:
8+ - Fixes LP #976469 without breaking the ABI
9+
10+ -- Sam Spilsbury <sam.spilsbury@canonical.com> Sun, 15 Apr 2012 10:30:33 +0800
11+
12 compiz-plugins-main (1:0.9.7.0~bzr19-0ubuntu10) precise; urgency=low
13
14 [ Sam Spilsbury ]
15
16=== added file 'debian/patches/fix_976469_abisafe.patch'
17--- debian/patches/fix_976469_abisafe.patch 1970-01-01 00:00:00 +0000
18+++ debian/patches/fix_976469_abisafe.patch 2012-04-15 02:35:33 +0000
19@@ -0,0 +1,201 @@
20+=== modified file 'include/animation/animeffect.h'
21+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/animeffect.h
22+===================================================================
23+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/include/animation/animeffect.h 2012-04-15 10:19:55.521982268 +0800
24++++ compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/animeffect.h 2012-04-15 10:22:03.390616343 +0800
25+@@ -1,5 +1,6 @@
26+ #ifndef ANIMATION_ANIMEFFECT_H
27+ #define ANIMATION_ANIMEFFECT_H
28++#include <map>
29+ #include "animation.h"
30+
31+ typedef Animation *(*CreateAnimFunc) (CompWindow *w,
32+@@ -94,7 +95,10 @@
33+ inline CompString optValS (unsigned int optionId) { return optVal (optionId).s (); }
34+ inline unsigned short *optValC (unsigned int optionId) { return optVal (optionId).c (); }
35+
36++
37+ public:
38++
39++ static std::map <Animation *, bool> dRequiredTransformedWindowForAnim;
40+
41+ Animation (CompWindow *w,
42+ WindowEvent curWindowEvent,
43+@@ -172,8 +176,6 @@
44+ return gWindow->glPaint (attrib, transform, region, mask);
45+ }
46+
47+- virtual bool requiresTransformedWindow () const { return true; }
48+-
49+ /// Gets info about the (extension) plugin that implements this animation.
50+ /// Should be overriden by a base animation class in every extension plugin.
51+ virtual ExtensionPluginInfo *getExtensionPluginInfo ();
52+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/fade.h
53+===================================================================
54+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/include/animation/fade.h 2012-04-15 10:19:55.521982268 +0800
55++++ compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/fade.h 2012-04-15 10:22:03.390616343 +0800
56+@@ -14,7 +14,6 @@
57+ void updateBB (CompOutput &output);
58+ bool updateBBUsed () { return true; }
59+ void updateAttrib (GLWindowPaintAttrib &wAttrib);
60+- virtual bool requiresTransformedWindow () const { return false; }
61+ virtual float getFadeProgress () { return progressLinear (); }
62+ };
63+ #endif
64+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/grid.h
65+===================================================================
66+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/include/animation/grid.h 2012-04-15 10:19:55.521982268 +0800
67++++ compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/grid.h 2012-04-15 10:22:03.390616343 +0800
68+@@ -82,8 +82,6 @@
69+
70+ virtual bool using3D () { return false; }
71+
72+- virtual bool requiresTransformedWindow () const { return true; }
73+-
74+ virtual void initGrid (); ///< Initializes grid width/height.
75+ ///< Default grid size is 2x2.
76+ ///< Override for custom grid size.
77+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/gridtransform.h
78+===================================================================
79+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/include/animation/gridtransform.h 2012-04-15 10:19:55.525982288 +0800
80++++ compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/gridtransform.h 2012-04-15 10:22:03.394616357 +0800
81+@@ -15,7 +15,6 @@
82+ void updateTransform (GLMatrix &wTransform);
83+ void updateBB (CompOutput &output);
84+ bool updateBBUsed () { return true; }
85+- bool requiresTransformedWindow () const { return true; }
86+
87+ protected:
88+ bool mUsingTransform; ///< whether transform matrix is used (default: true)
89+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/transform.h
90+===================================================================
91+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/include/animation/transform.h 2012-04-15 10:19:55.525982288 +0800
92++++ compiz-plugins-main-0.9.7.0~bzr19/animation/include/animation/transform.h 2012-04-15 10:22:03.394616357 +0800
93+@@ -29,7 +29,6 @@
94+ virtual void adjustDuration () {}
95+ virtual void applyTransform () {}
96+ virtual Point getCenter ();
97+- virtual bool requiresTransformedWindow () const { return true; }
98+
99+ };
100+ #endif
101+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/src/animation.cpp
102+===================================================================
103+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/src/animation.cpp 2012-04-15 10:19:55.557982446 +0800
104++++ compiz-plugins-main-0.9.7.0~bzr19/animation/src/animation.cpp 2012-04-15 10:22:03.394616357 +0800
105+@@ -86,6 +86,8 @@
106+ #include <assert.h>
107+ #include "private.h"
108+
109++std::map <Animation *, bool> Animation::dRequiredTransformedWindowForAnim;
110++
111+ using namespace compiz::core;
112+
113+ class AnimPluginVTable :
114+@@ -455,10 +457,14 @@
115+ PrivateAnimScreen *as = mAWindow->priv->paScreen ();
116+
117+ mTimestep = as->optionGetTimeStep ();
118++
119++ dRequiredTransformedWindowForAnim[this] = false;
120+ }
121+
122+ Animation::~Animation ()
123+ {
124++ dRequiredTransformedWindowForAnim.erase (this);
125++
126+ delete texturesCache;
127+ }
128+
129+@@ -1592,7 +1598,7 @@
130+
131+ //w->indexCount = 0; // TODO check if this is still necessary
132+
133+- if (mCurAnimation->requiresTransformedWindow ())
134++ if (Animation::dRequiredTransformedWindowForAnim [mCurAnimation])
135+ mask |= PAINT_WINDOW_TRANSFORMED_MASK;
136+
137+ wAttrib.xScale = 1.0f;
138+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/src/fade.cpp
139+===================================================================
140+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/src/fade.cpp 2012-02-10 11:58:25.000000000 +0800
141++++ compiz-plugins-main-0.9.7.0~bzr19/animation/src/fade.cpp 2012-04-15 10:22:03.398616371 +0800
142+@@ -45,6 +45,7 @@
143+ const CompRect &icon) :
144+ Animation::Animation (w, curWindowEvent, duration, info, icon)
145+ {
146++ Animation::dRequiredTransformedWindowForAnim[this] = false;
147+ }
148+
149+ void
150+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/src/private.h
151+===================================================================
152+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/src/private.h 2012-04-15 10:19:55.529982312 +0800
153++++ compiz-plugins-main-0.9.7.0~bzr19/animation/src/private.h 2012-04-15 10:22:03.398616371 +0800
154+@@ -502,7 +502,6 @@
155+ inline bool hasExtraTransform () { return true; }
156+ void applyExtraTransform (float progress);
157+ inline bool shouldAvoidParallelogramLook () { return true; }
158+- bool requiresTransformedWindow () const { return true; }
159+ };
160+
161+ class WaveAnim :
162+@@ -519,7 +518,6 @@
163+ void initGrid ();
164+ inline bool using3D () { return true; }
165+ void step ();
166+- bool requiresTransformedWindow () const { return true; }
167+
168+ static const float kMinDuration;
169+ };
170+@@ -542,7 +540,6 @@
171+ bool zoomToIcon ();
172+ void applyTransform ();
173+ float getFadeProgress ();
174+- bool requiresTransformedWindow () const { return true; }
175+
176+ float getProgress ();
177+ virtual void getParams (float *finalDistFac,
178+@@ -762,7 +759,6 @@
179+ void adjustDuration ();
180+ float getFadeProgress ();
181+ bool zoomToIcon ();
182+- bool requiresTransformedWindow () const { return true; }
183+
184+ static const float kDurationFactor;
185+ };
186+@@ -780,7 +776,6 @@
187+ inline bool using3D () { return true; }
188+ float getFadeProgress ();
189+ void updateWindowAttrib (GLWindowPaintAttrib &attrib);
190+- bool requiresTransformedWindow () const { return true; }
191+ };
192+
193+ class CurvedFoldAnim :
194+@@ -802,7 +797,6 @@
195+ float sinForProg,
196+ float relDistToCenter,
197+ float curveMaxAmp);
198+- bool requiresTransformedWindow () const { return true; }
199+ };
200+
201+ class HorizontalFoldsAnim :
202+@@ -823,5 +817,4 @@
203+ float sinForProg,
204+ float relDistToFoldCenter,
205+ float foldMaxAmp);
206+- bool requiresTransformedWindow () const { return true; }
207+ };
208+Index: compiz-plugins-main-0.9.7.0~bzr19/animation/src/zoomside.cpp
209+===================================================================
210+--- compiz-plugins-main-0.9.7.0~bzr19.orig/animation/src/zoomside.cpp 2012-02-10 11:58:25.000000000 +0800
211++++ compiz-plugins-main-0.9.7.0~bzr19/animation/src/zoomside.cpp 2012-04-15 10:22:03.398616371 +0800
212+@@ -60,6 +60,8 @@
213+ mIcon.setX (outRect.x () + outRect.width () / 2 - mIcon.width () / 2);
214+ mIcon.setY (outRect.y () + outRect.height () / 2 - mIcon.height () / 2);
215+ }
216++
217++ Animation::dRequiredTransformedWindowForAnim[this] = true;
218+ }
219+
220+ SidekickAnim::SidekickAnim (CompWindow *w,
221
222=== modified file 'debian/patches/series'
223--- debian/patches/series 2012-04-10 08:32:19 +0000
224+++ debian/patches/series 2012-04-15 02:35:33 +0000
225@@ -11,3 +11,4 @@
226 fix_963767.patch
227 fix_976469.patch
228 fix_940603.patch
229+fix_976469_abisafe.patch

Subscribers

People subscribed via source and target branches

to all changes: