~alan-griffiths/mir/fix-1475994-g++-5-backport-to-0.13

  • Committer: Alberto Aguirre
  • Date: 2015-06-17 19:11:14 UTC
  • Revision ID: alberto.aguirre@canonical.com-20150617191114-2cfjhluzzsjv0oeh
Avoid allocating mir::protobuf objects on the stack

When an addition is made to a protobuf message, a stack allocation of such object may differ from what the destructor of that message is expecting as the destructor is defined by libmirprotobuf and the allocation may have been made from an older definition of the message (by an older mirclient library for example) which can lead to stack corruption.

Ideally, the mirprotobuf library would have versioned symbols and have the ability to be loaded in parallel to a previous version but that's not currently possible.

As an alternative, avoid allocating mir defined protobuf objects on the stack and instead use the xxx::default_instance().New() factory methods which are defined in the mirprotobuf library.

Backport of lp:mir r2674
Filename Latest Rev Last Changed Committer Comment Size
..
.bzr-builddeb 435.1.1 11 years ago Didier Roche Put mir in split mode Diff
3rd_party 112.1.1 11 years ago Alan Griffiths Add 3rd party including libancillary Diff
benchmarks 217.1.1 11 years ago Thomas Voß mir/benchmarks: Add cpu and memory benchmarking wi Diff
cmake 45.2.18 11 years ago Alan Griffiths First cut (not working right) Diff
debian 234.1.1 11 years ago Thomas Voß mir: Pull packaging setup into trunk. Diff
design 197.1.2 11 years ago Alan Griffiths More docs Diff
doc 264.2.1 11 years ago Alexandros Frantzis doc,cmake: Add 'doc' make target Diff
examples 227.2.6 11 years ago Kevin DuBois merge in base branch. move the demo clients to a n Diff
guides 3 11 years ago Thomas Voß Added C++ style guide. Diff
include 2.1.6 11 years ago Alan Griffiths Split classes into headers Diff
playground 1904.3.1 9 years ago Alberto Aguirre Move examples that use private mir functionality i Diff
snappy 2402.5.1 9 years ago Daniel van Vugt Work in progress Diff
src 2.1.9 11 years ago Alan Griffiths Create a compositor lib Diff
tests 78.1.1 11 years ago Thomas Voß Reorganized tests into a single top-level director Diff
tools 17 11 years ago Kevin DuBois add a tools directory, with a short bash script fo Diff
.clang-format 2426.2.7 9 years ago Daniel van Vugt Merge latest trunk and fix conflicts. 1.3 KB Diff Download File
CMakeLists.txt 2551 8 years ago Daniel van Vugt Mir 0.13.2 is already in distro. Bump the version 8.8 KB Diff Download File
COPYING.GPL 459.1.6 11 years ago Didier Roche use LGPL as main license 34.2 KB Diff Download File
COPYING.LGPL 620.4.3 11 years ago Daniel van Vugt Merge latest lp:mir 7.4 KB Diff Download File
File cross-compile-chroot.sh 2094.4.24 9 years ago Daniel van Vugt Merge latest trunk. 1.9 KB Diff Download File
File deploy-and-test.sh 2426.2.7 9 years ago Daniel van Vugt Merge latest trunk and fix conflicts. 817 bytes Diff Download File
HACKING.md 747.1.2 10 years ago Alan Griffiths Some documentation on preconditions 3.8 KB Diff Download File
File native-compile.sh 1441.4.13 10 years ago Daniel van Vugt Merge latest development-branch 326 bytes Diff Download File
README.md 620.4.3 11 years ago Daniel van Vugt Merge latest lp:mir 1.4 KB Diff Download File