Refactor: Fix issues found by cppcheck
Resolve several issues found by cppcheck:
[msl_verify.hpp:28]: (style) Class 'MinimumShipLevel' has a constructor with 1 argument that is not explicit.
[ubi/watch.hpp:21]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[item_updater_main.cpp:22] -> [item_updater_main.cpp:49]: (style) Local variable rc shadows outer symbol
[serialize.cpp:19]: (performance) Function parameter 'versionId' should be passed by const reference.
[ubi/watch.hpp:43]: (style) Struct 'CustomFd' has a constructor with 1 argument that is not explicit.
[serialize.cpp:52]: (performance) Function parameter 'versionId' should be passed by const reference.
[serialize.cpp:116]: (performance) Function parameter 'versionId' should be passed by const reference.
[activation.cpp:115] -> [activation.cpp:152]: (style) Local variable mapperResponseMsg shadows outer symbol
[version.hpp:114]: (performance) Variable 'eraseCallback' is assigned in constructor body. Consider performing initialization in initialization list.
[image_verify.hpp:53]: (style) Struct 'CustomFd' has a constructor with 1 argument that is not explicit.
[ubi/item_updater_ubi.cpp:192]: (performance) Function parameter 'versionId' should be passed by const reference.
[ubi/item_updater_ubi.cpp:203]: (performance) Function parameter 'versionId' should be passed by const reference.
Tested: Verify the code compiles and cppcheck does not report the above
issues.
Change-Id: I096392a2a7a283fe198c9c29185125e61295e10f
Signed-off-by: Lei YU <mine260309@gmail.com>
diff --git a/ubi/item_updater_ubi.cpp b/ubi/item_updater_ubi.cpp
index cf8ffe0..83a514d 100644
--- a/ubi/item_updater_ubi.cpp
+++ b/ubi/item_updater_ubi.cpp
@@ -189,7 +189,7 @@
}
}
-void ItemUpdaterUbi::removeReadOnlyPartition(std::string versionId)
+void ItemUpdaterUbi::removeReadOnlyPartition(const std::string& versionId)
{
auto serviceFile = "obmc-flash-bios-ubiumount-ro@" + versionId + ".service";
@@ -200,7 +200,7 @@
bus.call_noreply(method);
}
-void ItemUpdaterUbi::removeReadWritePartition(std::string versionId)
+void ItemUpdaterUbi::removeReadWritePartition(const std::string& versionId)
{
auto serviceFile = "obmc-flash-bios-ubiumount-rw@" + versionId + ".service";
diff --git a/ubi/item_updater_ubi.hpp b/ubi/item_updater_ubi.hpp
index fb6a6ca..183daac 100644
--- a/ubi/item_updater_ubi.hpp
+++ b/ubi/item_updater_ubi.hpp
@@ -96,14 +96,14 @@
*
* @param[in] versionId - The id of the ro partition to remove.
*/
- void removeReadOnlyPartition(std::string versionId);
+ void removeReadOnlyPartition(const std::string& versionId);
/** @brief Clears read write PNOR partition for
* given Activation D-Bus object
*
* @param[in] versionId - The id of the rw partition to remove.
*/
- void removeReadWritePartition(std::string versionId);
+ void removeReadWritePartition(const std::string& versionId);
/** @brief Clears preserved PNOR partition */
void removePreservedPartition();
diff --git a/ubi/serialize.cpp b/ubi/serialize.cpp
index 7250a00..a40925a 100644
--- a/ubi/serialize.cpp
+++ b/ubi/serialize.cpp
@@ -16,7 +16,7 @@
namespace fs = std::experimental::filesystem;
-void storeToFile(std::string versionId, uint8_t priority)
+void storeToFile(const std::string& versionId, uint8_t priority)
{
auto bus = sdbusplus::bus::new_default();
@@ -49,7 +49,7 @@
bus.call_noreply(method);
}
-bool restoreFromFile(std::string versionId, uint8_t& priority)
+bool restoreFromFile(const std::string& versionId, uint8_t& priority)
{
auto varPath = PERSIST_DIR + versionId;
if (fs::exists(varPath))
@@ -113,7 +113,7 @@
return false;
}
-void removeFile(std::string versionId)
+void removeFile(const std::string& versionId)
{
auto bus = sdbusplus::bus::new_default();
diff --git a/ubi/serialize.hpp b/ubi/serialize.hpp
index e8860f3..e5fefad 100644
--- a/ubi/serialize.hpp
+++ b/ubi/serialize.hpp
@@ -13,19 +13,19 @@
* @param[in] versionId - The version for which to store information.
* @param[in] priority - RedundancyPriority value for that version.
*/
-void storeToFile(std::string versionId, uint8_t priority);
+void storeToFile(const std::string& versionId, uint8_t priority);
/** @brief Serialization function - restores activation information from file
* @param[in] versionId - The version for which to retrieve information.
* @param[in] priority - RedundancyPriority pointer for that version.
* @return true if restore was successful, false if not
*/
-bool restoreFromFile(std::string versionId, uint8_t& priority);
+bool restoreFromFile(const std::string& versionId, uint8_t& priority);
/** @brief Removes the serial file for a given version.
* @param[in] versionId - The version for which to remove a file, if it exists.
*/
-void removeFile(std::string versionId);
+void removeFile(const std::string& versionId);
} // namespace updater
} // namespace software
diff --git a/ubi/watch.hpp b/ubi/watch.hpp
index a04967e..4d195a3 100644
--- a/ubi/watch.hpp
+++ b/ubi/watch.hpp
@@ -18,7 +18,7 @@
{
void operator()(sd_event_source* eventSource) const
{
- eventSource = sd_event_source_unref(eventSource);
+ sd_event_source_unref(eventSource);
}
};
using EventSourcePtr = std::unique_ptr<sd_event_source, EventSourceDeleter>;
@@ -40,7 +40,7 @@
*
* @param[in] fd - File descriptor
*/
- CustomFd(int fd) : fd(fd)
+ explicit CustomFd(int fd) : fd(fd)
{
}