Blob Blame History Raw
From 1780fc12fb947a2bda22007a715527a18621a6cb Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Mon, 17 Jan 2022 09:21:23 +0100
Subject: [PATCH 2/4] Fix warning about dereferncing null pointer

In member function 'XrdCl::ChunkHandler::ToPgInfo(XrdCl::AnyObject*, XrdCl::PageInfo*&)',
    inlined from 'XrdCl::ChunkHandler::HandleResponse(XrdCl::XRootDStatus*, XrdCl::AnyObject*)' at .../src/XrdCl/XrdClXCpSrc.cc:58:17:
.../src/XrdCl/XrdClXCpSrc.cc:97:66: error: 'this' pointer is null [-Werror=nonnull]
   97 |         *chunk = PageInfo( rsp->offset, rsp->length, rsp->buffer );
      |                                                                  ^
In file included from .../src/./XrdCl/XrdClFileSystem.hh:32,
                 from .../src/./XrdCl/XrdClFile.hh:28,
                 from .../src/./XrdCl/XrdClXCpSrc.hh:28,
                 from .../src/XrdCl/XrdClXCpSrc.cc:25:
.../src/./XrdCl/XrdClXRootDResponses.hh: In member function 'XrdCl::ChunkHandler::HandleResponse(XrdCl::XRootDStatus*, XrdCl::AnyObject*)':
.../src/./XrdCl/XrdClXRootDResponses.hh:962:15: note: in a call to non-static member function 'XrdCl::PageInfo::operator=(XrdCl::PageInfo&&)'
  962 |     PageInfo& operator=( PageInfo &&pginf );
      |               ^~~~~~~~
cc1plus: all warnings being treated as errors
---
 src/XrdCl/XrdClXCpSrc.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/XrdCl/XrdClXCpSrc.cc b/src/XrdCl/XrdClXCpSrc.cc
index 532df79a4..c68fbc499 100644
--- a/src/XrdCl/XrdClXCpSrc.cc
+++ b/src/XrdCl/XrdClXCpSrc.cc
@@ -94,7 +94,7 @@ class ChunkHandler: public ResponseHandler
       {
         ChunkInfo *rsp = nullptr;
         response->Get( rsp );
-        *chunk = PageInfo( rsp->offset, rsp->length, rsp->buffer );
+        chunk = new PageInfo( rsp->offset, rsp->length, rsp->buffer );
         response->Set( ( int* )0 );
       }
     }
-- 
2.34.1