main: handle error checking with handler creation

Actually verify the library was configured to handle at least one
firmware type.

Change-Id: Ie80c8a1fb5ac11d9d31d67258246c0a064fd42b8
Signed-off-by: Patrick Venture <venture@google.com>
diff --git a/main.cpp b/main.cpp
index ba2389a..ec0f53b 100644
--- a/main.cpp
+++ b/main.cpp
@@ -31,10 +31,18 @@
     supportedTransports |= static_cast<std::uint32_t>(FirmwareUpdateFlags::lpc);
 #endif
 
+    auto handler = FirmwareBlobHandler::CreateFirmwareBlobHandler(
+        supportedFirmware, supportedTransports);
+
+    if (!handler)
+    {
+        log<level::ERR>("Firmware Handler has invalid configuration");
+        return;
+    }
+
     auto* manager = getBlobManager();
-    if (!manager->registerHandler(
-            FirmwareBlobHandler::CreateFirmwareBlobHandler(
-                supportedFirmware, supportedTransports)))
+
+    if (!manager->registerHandler(std::move(handler)))
     {
         log<level::ERR>("Failed to register Firmware Handler");
     }