/* Delete Specific from the list of maps for device Handle. */
EFI_STATUS PerformSingleMappingDelete(IN CONST CHAR16 *Specific, IN CONST EFI_HANDLE Handle)
/* Delete Specific from the list of maps for device Handle. */
EFI_STATUS PerformSingleMappingDelete(IN CONST CHAR16 *Specific, IN CONST EFI_HANDLE Handle)
{
  EFI_DEVICE_PATH_PROTOCOL  *DevPath;
  EFI_DEVICE_PATH_PROTOCOL  *DevPathCopy;
  CONST CHAR16              *MapList;
  CHAR16                    *CurrentName;
  DevPath     = DevicePathFromHandle (Handle);
  DevPathCopy = DevPath;
  MapList     = gEfiShellProtocol->GetMapFromDevicePath (&DevPathCopy);
  CurrentName = NULL;
  if (MapList == NULL) {
    return (EFI_NOT_FOUND);
  }
  if (!SearchList (MapList, Specific, &CurrentName, TRUE, FALSE, L";")) {
    return (EFI_NOT_FOUND);
  }
  return (gEfiShellProtocol->SetMap (NULL, CurrentName));
}