Skip to content

Commit

Permalink
CompositorBuffer: do not initialize members after mmap
Browse files Browse the repository at this point in the history
  • Loading branch information
bramoosterhuis committed Jan 29, 2024
1 parent ae32d9b commit a5db742
Showing 1 changed file with 7 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -67,16 +67,12 @@ namespace Compositor {
SharedStorage(const SharedStorage&) = delete;
SharedStorage& operator=(const SharedStorage&) = delete;

SharedStorage()
: _width(0)
, _height(0)
, _format(0)
, _modifier(0)
, _type(Exchange::ICompositionBuffer::TYPE_INVALID)
, _dirty()
, _copyOfDirty(false)
{
}
// FIXME:
// Do not initialize members for now, this constructor is called after a mmap in the
// placement new operator above. Initializing them now will reset the original values
// of the buffer metadata.
SharedStorage(){};

SharedStorage(const uint32_t width, const uint32_t height, const uint32_t format, const uint64_t modifier, const Exchange::ICompositionBuffer::DataType type)
: _width(width)
, _height(height)
Expand Down Expand Up @@ -325,7 +321,7 @@ namespace Compositor {

ASSERT(_virtualFd != -1);

_storage = new (_virtualFd) SharedStorage();
_storage = new (_virtualFd) SharedStorage;
if (_storage == nullptr) {
::close(_virtualFd);
} else {
Expand Down

0 comments on commit a5db742

Please sign in to comment.