Merge lp:~vanvugt/compiz-core/fix-922199 into lp:compiz-core/0.9.5

Proposed by Daniel van Vugt
Status: Merged
Merged at revision: 2967
Proposed branch: lp:~vanvugt/compiz-core/fix-922199
Merge into: lp:compiz-core/0.9.5
Diff against target: 52 lines (+11/-9)
3 files modified
plugins/place/src/constrain-to-workarea/CMakeLists.txt (+1/-4)
plugins/place/src/screen-size-change/CMakeLists.txt (+2/-5)
src/CMakeLists.txt (+8/-0)
To merge this branch: bzr merge lp:~vanvugt/compiz-core/fix-922199
Reviewer Review Type Date Requested Status
Compiz Maintainers Pending
Review via email: mp+90597@code.launchpad.net

Description of the change

Prevent core classes being reinstantiated in plugins. (LP: #922199)

This not only caused massive code bloat from the duplicated class functions,
but serious bugs from duplicated static data such as singleton pointers.

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

You are amazing. Thank you.

Testing this now.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'plugins/place/src/constrain-to-workarea/CMakeLists.txt'
--- plugins/place/src/constrain-to-workarea/CMakeLists.txt 2012-01-27 06:48:04 +0000
+++ plugins/place/src/constrain-to-workarea/CMakeLists.txt 2012-01-29 08:51:23 +0000
@@ -57,10 +57,7 @@
5757
58TARGET_LINK_LIBRARIES(58TARGET_LINK_LIBRARIES(
59 compiz_place_constrain_to_workarea59 compiz_place_constrain_to_workarea
60 compiz_rect
61 compiz_point
62 compiz_window_geometry
63 compiz_window_geometry_saver
6460
61 compiz_core
65 ${GLIBMM_LIBRARIES}62 ${GLIBMM_LIBRARIES}
66)63)
6764
=== modified file 'plugins/place/src/screen-size-change/CMakeLists.txt'
--- plugins/place/src/screen-size-change/CMakeLists.txt 2012-01-27 06:48:04 +0000
+++ plugins/place/src/screen-size-change/CMakeLists.txt 2012-01-29 08:51:23 +0000
@@ -57,11 +57,8 @@
5757
58TARGET_LINK_LIBRARIES(58TARGET_LINK_LIBRARIES(
59 compiz_place_screen_size_change59 compiz_place_screen_size_change
60
60 compiz_place_constrain_to_workarea61 compiz_place_constrain_to_workarea
61 compiz_rect62 compiz_core
62 compiz_point
63 compiz_window_geometry
64 compiz_window_geometry_saver
65
66 ${GLIBMM_LIBRARIES}63 ${GLIBMM_LIBRARIES}
67)64)
6865
=== modified file 'src/CMakeLists.txt'
--- src/CMakeLists.txt 2012-01-24 14:57:05 +0000
+++ src/CMakeLists.txt 2012-01-29 08:51:23 +0000
@@ -158,6 +158,14 @@
158# ${CORE_MOD_LIBRARIES}158# ${CORE_MOD_LIBRARIES}
159)159)
160160
161#
162# Tell CMake that targets using compiz_core should NOT re-import the
163# libraries that compiz_core depends on (contains).
164#
165set_target_properties (compiz_core PROPERTIES
166 LINK_INTERFACE_LIBRARIES ""
167)
168
161target_link_libraries (169target_link_libraries (
162 compiz170 compiz
163 compiz_core171 compiz_core

Subscribers

People subscribed via source and target branches