]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkUnixPkg/Dxe/UnixThunk/Bus/SimpleFileSystem/ComponentName.c
Fix component name bugs when input Controller Name is invalid
[mirror_edk2.git] / EdkUnixPkg / Dxe / UnixThunk / Bus / SimpleFileSystem / ComponentName.c
index 0db3b1c35820aeea0dcb31c96036b9fe5ff11127..347326dcb86bb2fc9130ce578af8f21b615be0ae 100644 (file)
@@ -167,13 +167,24 @@ UnixSimpleFileSystemComponentNameGetControllerName (
     return EFI_UNSUPPORTED;\r
   }\r
 \r
+  //\r
+  // Make sure this driver is currently managing ControllerHandle\r
+  //\r
+  Status = EfiTestManagedDevice (\r
+             ControllerHandle,\r
+             gUnixSimpleFileSystemDriverBinding.DriverBindingHandle,\r
+             &gEfiUnixIoProtocolGuid\r
+             );\r
+  if (EFI_ERROR (Status)) {\r
+    return EFI_UNSUPPORTED;\r
+  }\r
   //\r
   // Get our context back\r
   //\r
   Status = gBS->OpenProtocol (\r
                   ControllerHandle,\r
                   &gEfiSimpleFileSystemProtocolGuid,\r
-                  &SimpleFileSystem,\r
+                  (VOID**)&SimpleFileSystem,\r
                   gUnixSimpleFileSystemDriverBinding.DriverBindingHandle,\r
                   ControllerHandle,\r
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL\r