diff --git a/src/cuda/communication/CustomMemoryBuffer.h b/src/cuda/communication/CustomMemoryBuffer.h
index 8ad176077a09d292ab7f00750d58efb0348a37cb..7ca7ab46fb115118f88a55d27ce91d9df01a650d 100644
--- a/src/cuda/communication/CustomMemoryBuffer.h
+++ b/src/cuda/communication/CustomMemoryBuffer.h
@@ -85,9 +85,9 @@ namespace communication {
       T *advanceNoResize( std::size_t bytes ) { return reinterpret_cast<T *>( advanceNoResize( bytes * sizeof( T ))); }
 
    private:
-      ElementType *begin_;
-      ElementType *cur_;
-      ElementType *end_;
+      ElementType *begin_ = nullptr;
+      ElementType *cur_ = nullptr;
+      ElementType *end_ = nullptr;
    };
 
 
diff --git a/src/cuda/communication/CustomMemoryBuffer.impl.h b/src/cuda/communication/CustomMemoryBuffer.impl.h
index 5bf1ac8c18c37ce8fc72c8af24d71208f71209f6..cfc5d8283a00664585405af82d3b4056c6d2fa77 100644
--- a/src/cuda/communication/CustomMemoryBuffer.impl.h
+++ b/src/cuda/communication/CustomMemoryBuffer.impl.h
@@ -45,6 +45,7 @@ namespace communication {
 
    template<typename Allocator>
    CustomMemoryBuffer<Allocator>::CustomMemoryBuffer( const CustomMemoryBuffer &pb )
+           : begin_( nullptr ), cur_( nullptr ), end_( nullptr )
    {
       if( pb.begin_ != nullptr )
       {