diff --git a/extensions/openpower-pels/manager.cpp b/extensions/openpower-pels/manager.cpp
index a40305d..e64e858 100644
--- a/extensions/openpower-pels/manager.cpp
+++ b/extensions/openpower-pels/manager.cpp
@@ -197,7 +197,7 @@
         // Check if firmware should quiesce system due to error
         checkPelAndQuiesce(pel);
         updateEventId(pel);
-        updateResolution(pel);
+        updateResolution(*pel);
         createPELEntry(obmcLogID);
     }
     else
@@ -404,7 +404,7 @@
     // Check if firmware should quiesce system due to error
     checkPelAndQuiesce(pel);
     updateEventId(pel);
-    updateResolution(pel);
+    updateResolution(*pel);
     createPELEntry(obmcLogID);
 }
 
@@ -781,14 +781,16 @@
     return resolution;
 }
 
-void Manager::updateResolution(std::unique_ptr<openpower::pels::PEL>& pel)
+bool Manager::updateResolution(const openpower::pels::PEL& pel)
 {
-    std::string callouts = getResolution(*pel);
-    auto entryN = _logManager.entries.find(pel->obmcLogID());
+    std::string callouts = getResolution(pel);
+    auto entryN = _logManager.entries.find(pel.obmcLogID());
     if (entryN != _logManager.entries.end())
     {
         entryN->second->resolution(callouts, true);
     }
+
+    return false;
 }
 
 void Manager::setEntryPath(uint32_t obmcLogID)
