diff --git a/include/openbmc_dbus_rest.hpp b/include/openbmc_dbus_rest.hpp
index 5bdc4ec..82e3ecd 100644
--- a/include/openbmc_dbus_rest.hpp
+++ b/include/openbmc_dbus_rest.hpp
@@ -221,7 +221,6 @@
                 }
                 else
                 {
-
                     propertyJson = val;
                 }
                 },
@@ -344,7 +343,6 @@
                             }
                             else
                             {
-
                                 propertyJson = val;
                             }
                             },
@@ -1678,8 +1676,8 @@
         [objectPath, asyncResp](
             const boost::system::error_code& ec,
             const dbus::utility::MapperGetSubTreeResponse& objectNames) {
-        auto transaction =
-            std::make_shared<InProgressEnumerateData>(objectPath, asyncResp);
+        auto transaction = std::make_shared<InProgressEnumerateData>(objectPath,
+                                                                     asyncResp);
 
         transaction->subtree =
             std::make_shared<dbus::utility::MapperGetSubTreeResponse>(
@@ -2030,7 +2028,6 @@
                           const std::shared_ptr<bmcweb::AsyncResp>& asyncResp,
                           std::string& objectPath)
 {
-
     // If accessing a single attribute, fill in and update objectPath,
     // otherwise leave destProperty blank
     std::string destProperty;
@@ -2572,8 +2569,8 @@
                 asyncResp->res.result(boost::beast::http::status::not_found);
                 return;
             }
-            std::string contentDispositionParam =
-                "attachment; filename=\"" + dumpFileName + "\"";
+            std::string contentDispositionParam = "attachment; filename=\"" +
+                                                  dumpFileName + "\"";
 
             asyncResp->res.addHeader(
                 boost::beast::http::field::content_disposition,
