dm: Fix invalid string memory access

Change-Id: I9f653206e06466d64c5a86a85b113ab2f26be920
diff --git a/sdm/libs/core/comp_manager.cpp b/sdm/libs/core/comp_manager.cpp
index d729d3b..c2f9f4c 100644
--- a/sdm/libs/core/comp_manager.cpp
+++ b/sdm/libs/core/comp_manager.cpp
@@ -156,7 +156,7 @@
   }
 
   DLOGV_IF(kTagCompManager, "Registered displays [%s], display %d-%d",
-           StringDisplayList(registered_displays_), display_comp_ctx->display_id,
+           StringDisplayList(registered_displays_).c_str(), display_comp_ctx->display_id,
            display_comp_ctx->display_type);
 
   return kErrorNone;
@@ -186,7 +186,7 @@
   }
 
   DLOGV_IF(kTagCompManager, "Registered displays [%s], display %d-%d",
-           StringDisplayList(registered_displays_), display_comp_ctx->display_id,
+           StringDisplayList(registered_displays_).c_str(), display_comp_ctx->display_id,
            display_comp_ctx->display_type);
 
   delete display_comp_ctx;
@@ -423,7 +423,7 @@
   display_comp_ctx->first_cycle_ = false;
 
   DLOGV_IF(kTagCompManager, "Registered displays [%s], display %d-%d",
-           StringDisplayList(registered_displays_), display_comp_ctx->display_id,
+           StringDisplayList(registered_displays_).c_str(), display_comp_ctx->display_id,
            display_comp_ctx->display_type);
 
   return kErrorNone;
@@ -626,7 +626,7 @@
   return kErrorNone;
 }
 
-const char *CompManager::StringDisplayList(const std::set<int32_t> &displays) {
+std::string CompManager::StringDisplayList(const std::set<int32_t> &displays) {
   std::string displays_str;
   for (auto disps : displays) {
     if (displays_str.empty()) {
@@ -635,7 +635,7 @@
       displays_str += ", " + std::to_string(disps);
     }
   }
-  return displays_str.c_str();
+  return displays_str;
 }
 
 DisplayError CompManager::SetBlendSpace(Handle display_ctx, const PrimariesTransfer &blend_space) {
diff --git a/sdm/libs/core/comp_manager.h b/sdm/libs/core/comp_manager.h
index e52d471..2818326 100644
--- a/sdm/libs/core/comp_manager.h
+++ b/sdm/libs/core/comp_manager.h
@@ -31,6 +31,7 @@
 #include <bitset>
 #include <set>
 #include <vector>
+#include <string>
 
 #include "strategy.h"
 #include "resource_default.h"
@@ -98,7 +99,7 @@
 
   void PrepareStrategyConstraints(Handle display_ctx, HWLayers *hw_layers);
   void UpdateStrategyConstraints(bool is_primary, bool disabled);
-  const char *StringDisplayList(const std::set<int32_t> &displays);
+  std::string StringDisplayList(const std::set<int32_t> &displays);
 
   struct DisplayCompositionContext {
     Strategy *strategy = NULL;