Add deprecation warning to Adapter::GetProperties()
This CL adds a deprecation warning to let developers know thet should
use Adapter::GetInfo() instead of Adapter::GetProperties().
It also updates Dawn to use Adapter::GetInfo() internally.
Bug: 335383516
Change-Id: Ia4eead297b553a41b522600a5c4cee605c825595
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/193043
Commit-Queue: Fr <beaufort.francois@gmail.com>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
diff --git a/generator/templates/dawn/native/api_StreamImpl.cpp b/generator/templates/dawn/native/api_StreamImpl.cpp
index 2a7de16..960d29f 100644
--- a/generator/templates/dawn/native/api_StreamImpl.cpp
+++ b/generator/templates/dawn/native/api_StreamImpl.cpp
@@ -103,7 +103,7 @@
StreamIn(sink, static_cast<bool>(t));
}
-{% call render_streaming_impl("adapter properties", true, false) %}
+{% call render_streaming_impl("adapter info", true, false) %}
{% endcall %}
{% call render_streaming_impl("dawn cache device descriptor", true, false,
diff --git a/src/dawn/dawn_wire.json b/src/dawn/dawn_wire.json
index da0aab9..548e6b2 100644
--- a/src/dawn/dawn_wire.json
+++ b/src/dawn/dawn_wire.json
@@ -185,7 +185,6 @@
{ "name": "status", "type": "request adapter status" },
{ "name": "message", "type": "char", "annotation": "const*", "length": "strlen", "optional": true },
{ "name": "info", "type": "adapter info", "annotation": "const*", "optional": "true" },
- { "name": "properties", "type": "adapter properties", "annotation": "const*", "optional": "true" },
{ "name": "limits", "type": "supported limits", "annotation": "const*", "optional": "true" },
{ "name": "features count", "type": "uint32_t"},
{ "name": "features", "type": "feature name", "annotation": "const*", "length": "features count"}
diff --git a/src/dawn/native/Adapter.cpp b/src/dawn/native/Adapter.cpp
index 1879fc1..8db4054 100644
--- a/src/dawn/native/Adapter.cpp
+++ b/src/dawn/native/Adapter.cpp
@@ -124,7 +124,7 @@
AdapterProperties properties = {};
properties.nextInChain = info->nextInChain;
- if (APIGetProperties(&properties) == wgpu::Status::Error) {
+ if (GetPropertiesInternal(&properties) == wgpu::Status::Error) {
return wgpu::Status::Error;
}
@@ -163,6 +163,11 @@
}
wgpu::Status AdapterBase::APIGetProperties(AdapterProperties* properties) const {
+ mInstance->EmitDeprecationWarning("GetProperties is deprecated, use GetInfo instead.");
+ return GetPropertiesInternal(properties);
+}
+
+wgpu::Status AdapterBase::GetPropertiesInternal(AdapterProperties* properties) const {
DAWN_ASSERT(properties != nullptr);
UnpackedPtr<AdapterProperties> unpacked;
if (mInstance->ConsumedError(ValidateAndUnpack(properties), &unpacked)) {
diff --git a/src/dawn/native/Adapter.h b/src/dawn/native/Adapter.h
index a6dc732..ce61708 100644
--- a/src/dawn/native/Adapter.h
+++ b/src/dawn/native/Adapter.h
@@ -93,6 +93,8 @@
const std::string& GetName() const;
private:
+ wgpu::Status GetPropertiesInternal(AdapterProperties* properties) const;
+
std::pair<Ref<DeviceBase::DeviceLostEvent>, ResultOrError<Ref<DeviceBase>>> CreateDevice(
const DeviceDescriptor* rawDescriptor);
ResultOrError<Ref<DeviceBase>> CreateDeviceInternal(const DeviceDescriptor* rawDescriptor,
diff --git a/src/dawn/native/Device.cpp b/src/dawn/native/Device.cpp
index 19bdea7..97dde78 100644
--- a/src/dawn/native/Device.cpp
+++ b/src/dawn/native/Device.cpp
@@ -375,8 +375,8 @@
reinterpret_cast<void*>(callbackInfo.callback), callbackInfo.userdata};
}
- AdapterProperties adapterProperties;
- adapter->APIGetProperties(&adapterProperties);
+ AdapterInfo adapterInfo;
+ adapter->APIGetInfo(&adapterInfo);
ApplyFeatures(descriptor);
@@ -435,11 +435,11 @@
mIsImmediateErrorHandlingEnabled = IsToggleEnabled(Toggle::EnableImmediateErrorHandling);
- // Record the cache key from the properties. Note that currently, if a new extension
+ // Record the cache key from the adapter info. Note that currently, if a new extension
// descriptor is added (and probably handled here), the cache key recording needs to be
// updated.
- StreamIn(&mDeviceCacheKey, kDawnVersion, adapterProperties, mEnabledFeatures.featuresBitSet,
- mToggles, cacheDesc);
+ StreamIn(&mDeviceCacheKey, kDawnVersion, adapterInfo, mEnabledFeatures.featuresBitSet, mToggles,
+ cacheDesc);
}
DeviceBase::DeviceBase() : mState(State::Alive), mToggles(ToggleStage::Device) {
diff --git a/src/dawn/tests/AdapterTestConfig.cpp b/src/dawn/tests/AdapterTestConfig.cpp
index e166942..b316ae1 100644
--- a/src/dawn/tests/AdapterTestConfig.cpp
+++ b/src/dawn/tests/AdapterTestConfig.cpp
@@ -84,17 +84,16 @@
forceDisabledWorkarounds);
}
-TestAdapterProperties::TestAdapterProperties(const wgpu::AdapterProperties& properties,
- bool selected)
- : vendorID(properties.vendorID),
- vendorName(properties.vendorName),
- architecture(properties.architecture),
- deviceID(properties.deviceID),
- name(properties.name),
- driverDescription(properties.driverDescription),
- adapterType(properties.adapterType),
- backendType(properties.backendType),
- compatibilityMode(properties.compatibilityMode),
+TestAdapterProperties::TestAdapterProperties(const wgpu::AdapterInfo& info, bool selected)
+ : vendorID(info.vendorID),
+ vendorName(info.vendor),
+ architecture(info.architecture),
+ deviceID(info.deviceID),
+ name(info.device),
+ driverDescription(info.description),
+ adapterType(info.adapterType),
+ backendType(info.backendType),
+ compatibilityMode(info.compatibilityMode),
selected(selected) {}
std::string TestAdapterProperties::ParamName() const {
diff --git a/src/dawn/tests/AdapterTestConfig.h b/src/dawn/tests/AdapterTestConfig.h
index 0a08058..1919bff 100644
--- a/src/dawn/tests/AdapterTestConfig.h
+++ b/src/dawn/tests/AdapterTestConfig.h
@@ -49,7 +49,7 @@
};
struct TestAdapterProperties {
- TestAdapterProperties(const wgpu::AdapterProperties& properties, bool selected);
+ TestAdapterProperties(const wgpu::AdapterInfo& info, bool selected);
uint32_t vendorID;
std::string vendorName;
std::string architecture;
diff --git a/src/dawn/tests/DawnTest.cpp b/src/dawn/tests/DawnTest.cpp
index 0760020..be614d3 100644
--- a/src/dawn/tests/DawnTest.cpp
+++ b/src/dawn/tests/DawnTest.cpp
@@ -458,10 +458,10 @@
adapterOptions.compatibilityMode = compatibilityMode;
for (const native::Adapter& adapter :
instance->EnumerateAdapters(&adapterOptions)) {
- wgpu::AdapterProperties properties;
- adapter.GetProperties(&properties);
+ wgpu::AdapterInfo info;
+ adapter.GetInfo(&info);
- if (properties.adapterType == devicePreference) {
+ if (info.adapterType == devicePreference) {
// Found a matching preferred device type. Return to break out of all loops.
preferredDeviceType = devicePreference;
return;
@@ -476,15 +476,14 @@
wgpu::RequestAdapterOptions adapterOptions;
adapterOptions.compatibilityMode = compatibilityMode;
for (const native::Adapter& adapter : instance->EnumerateAdapters(&adapterOptions)) {
- wgpu::AdapterProperties properties;
- adapter.GetProperties(&properties);
+ wgpu::AdapterInfo info;
+ adapter.GetInfo(&info);
// Skip non-OpenGLES compat adapters. Metal/Vulkan/D3D12 support
// core WebGPU.
// D3D11 is in an experimental state where it may support core.
// See crbug.com/dawn/1820 for determining d3d11 capabilities.
- if (properties.compatibilityMode &&
- properties.backendType != wgpu::BackendType::OpenGLES) {
+ if (info.compatibilityMode && info.backendType != wgpu::BackendType::OpenGLES) {
continue;
}
@@ -494,11 +493,11 @@
// The adapter is deselected if:
if (mHasBackendTypeFilter) {
// It doesn't match the backend type, if present.
- selected &= properties.backendType == mBackendTypeFilter;
+ selected &= info.backendType == mBackendTypeFilter;
}
if (mHasVendorIdFilter) {
// It doesn't match the vendor id, if present.
- selected &= mVendorIdFilter == properties.vendorID;
+ selected &= mVendorIdFilter == info.vendorID;
if (!mDevicePreferences.empty()) {
WarningLog() << "Vendor ID filter provided. Ignoring device type preference.";
@@ -509,29 +508,29 @@
selected &=
// The device type doesn't match the first available preferred type for that
// backend, if present.
- (properties.adapterType == *preferredDeviceType) ||
+ (info.adapterType == *preferredDeviceType) ||
// Always select Unknown OpenGL adapters if we don't want a CPU adapter.
// OpenGL will usually be unknown because we can't query the device type.
// If we ever have Swiftshader GL (unlikely), we could set the DeviceType
// properly.
(*preferredDeviceType != wgpu::AdapterType::CPU &&
- properties.adapterType == wgpu::AdapterType::Unknown &&
- (properties.backendType == wgpu::BackendType::OpenGL ||
- properties.backendType == wgpu::BackendType::OpenGLES)) ||
+ info.adapterType == wgpu::AdapterType::Unknown &&
+ (info.backendType == wgpu::BackendType::OpenGL ||
+ info.backendType == wgpu::BackendType::OpenGLES)) ||
// Always select the Null backend. There are few tests on this backend, and they
// run quickly. This is temporary as to not lose coverage. We can group it with
// Swiftshader as a CPU adapter when we have Swiftshader tests.
- (properties.backendType == wgpu::BackendType::Null);
+ (info.backendType == wgpu::BackendType::Null);
}
// In Windows Remote Desktop sessions we may be able to discover multiple adapters that
// have the same name and backend type. We will just choose one adapter from them in our
// tests.
- const auto adapterTypeAndName = std::tuple(
- properties.backendType, std::string(properties.name), properties.compatibilityMode);
+ const auto adapterTypeAndName =
+ std::tuple(info.backendType, std::string(info.device), info.compatibilityMode);
if (adapterNameSet.find(adapterTypeAndName) == adapterNameSet.end()) {
adapterNameSet.insert(adapterTypeAndName);
- mAdapterProperties.emplace_back(properties, selected);
+ mAdapterProperties.emplace_back(info, selected);
}
}
}
@@ -745,15 +744,15 @@
const auto& adapters = gTestEnv->GetInstance()->EnumerateAdapters(&adapterOptions);
const auto& it =
std::find_if(adapters.begin(), adapters.end(), [&](const native::Adapter& candidate) {
- wgpu::AdapterProperties properties;
- candidate.GetProperties(&properties);
+ wgpu::AdapterInfo info;
+ candidate.GetInfo(&info);
const auto& param = gCurrentTest->mParam;
return (param.adapterProperties.selected &&
- properties.deviceID == param.adapterProperties.deviceID &&
- properties.vendorID == param.adapterProperties.vendorID &&
- properties.adapterType == param.adapterProperties.adapterType &&
- strcmp(properties.name, param.adapterProperties.name.c_str()) == 0);
+ info.deviceID == param.adapterProperties.deviceID &&
+ info.vendorID == param.adapterProperties.vendorID &&
+ info.adapterType == param.adapterProperties.adapterType &&
+ strcmp(info.device, param.adapterProperties.name.c_str()) == 0);
});
DAWN_ASSERT(it != adapters.end());
gCurrentTest->mBackendAdapter = *it;
diff --git a/src/dawn/tests/end2end/AdapterPropertiesD3DTests.cpp b/src/dawn/tests/end2end/AdapterPropertiesD3DTests.cpp
index 22b812d..05e409b 100644
--- a/src/dawn/tests/end2end/AdapterPropertiesD3DTests.cpp
+++ b/src/dawn/tests/end2end/AdapterPropertiesD3DTests.cpp
@@ -43,7 +43,7 @@
wgpu::AdapterPropertiesD3D d3dProperties;
properties.nextInChain = &d3dProperties;
- adapter.GetProperties(&properties);
+ EXPECT_DEPRECATION_WARNING(adapter.GetProperties(&properties));
// This is the minimum D3D shader model Dawn supports.
EXPECT_GE(d3dProperties.shaderModel, 50u);
diff --git a/src/dawn/tests/end2end/AdapterPropertiesVkTests.cpp b/src/dawn/tests/end2end/AdapterPropertiesVkTests.cpp
index d6baf2a..2faa4ed 100644
--- a/src/dawn/tests/end2end/AdapterPropertiesVkTests.cpp
+++ b/src/dawn/tests/end2end/AdapterPropertiesVkTests.cpp
@@ -44,7 +44,7 @@
wgpu::AdapterPropertiesVk vkProperties;
properties.nextInChain = &vkProperties;
- adapter.GetProperties(&properties);
+ EXPECT_DEPRECATION_WARNING(adapter.GetProperties(&properties));
// The driver version should be set to something but it depends on the hardware.
EXPECT_NE(vkProperties.driverVersion, 0u);
diff --git a/src/dawn/tests/end2end/MemoryHeapPropertiesTests.cpp b/src/dawn/tests/end2end/MemoryHeapPropertiesTests.cpp
index 97e2b70..d855c88 100644
--- a/src/dawn/tests/end2end/MemoryHeapPropertiesTests.cpp
+++ b/src/dawn/tests/end2end/MemoryHeapPropertiesTests.cpp
@@ -65,7 +65,7 @@
wgpu::AdapterPropertiesMemoryHeaps memoryHeapProperties;
properties.nextInChain = &memoryHeapProperties;
- adapter.GetProperties(&properties);
+ EXPECT_DEPRECATION_WARNING(adapter.GetProperties(&properties));
CheckMemoryHeapProperties(memoryHeapProperties);
}
{
diff --git a/src/dawn/tests/perf_tests/DawnPerfTest.h b/src/dawn/tests/perf_tests/DawnPerfTest.h
index 063963c..e80be66 100644
--- a/src/dawn/tests/perf_tests/DawnPerfTest.h
+++ b/src/dawn/tests/perf_tests/DawnPerfTest.h
@@ -139,9 +139,9 @@
void SetUp() override {
DawnTestWithParams<Params>::SetUp();
- wgpu::AdapterProperties properties;
- this->GetAdapter().GetProperties(&properties);
- DAWN_TEST_UNSUPPORTED_IF(properties.adapterType == wgpu::AdapterType::CPU);
+ wgpu::AdapterInfo info;
+ this->GetAdapter().GetInfo(&info);
+ DAWN_TEST_UNSUPPORTED_IF(info.adapterType == wgpu::AdapterType::CPU);
if (mSupportsTimestampQuery) {
InitializeGPUTimer();
diff --git a/src/dawn/tests/unittests/wire/WireInstanceTests.cpp b/src/dawn/tests/unittests/wire/WireInstanceTests.cpp
index 0a97e51..465ea6a 100644
--- a/src/dawn/tests/unittests/wire/WireInstanceTests.cpp
+++ b/src/dawn/tests/unittests/wire/WireInstanceTests.cpp
@@ -128,16 +128,6 @@
fakeInfo.vendorID = 0x134;
fakeInfo.deviceID = 0x918;
- WGPUAdapterProperties fakeProperties = {};
- fakeProperties.vendorID = 0x134;
- fakeProperties.vendorName = "fake-vendor";
- fakeProperties.architecture = "fake-architecture";
- fakeProperties.deviceID = 0x918;
- fakeProperties.name = "fake adapter";
- fakeProperties.driverDescription = "hello world";
- fakeProperties.backendType = WGPUBackendType_D3D12;
- fakeProperties.adapterType = WGPUAdapterType_IntegratedGPU;
-
WGPUSupportedLimits fakeLimits = {};
fakeLimits.nextInChain = nullptr;
fakeLimits.limits.maxTextureDimension1D = 433;
@@ -160,12 +150,6 @@
return WGPUStatus_Success;
})));
- EXPECT_CALL(api, AdapterGetProperties(apiAdapter, NotNull()))
- .WillOnce(WithArg<1>(Invoke([&](WGPUAdapterProperties* properties) {
- *properties = fakeProperties;
- return WGPUStatus_Success;
- })));
-
EXPECT_CALL(api, AdapterGetLimits(apiAdapter, NotNull()))
.WillOnce(WithArg<1>(Invoke([&](WGPUSupportedLimits* limits) {
*limits = fakeLimits;
@@ -206,14 +190,14 @@
WGPUAdapterProperties properties = {};
wgpuAdapterGetProperties(adapter, &properties);
- EXPECT_EQ(properties.vendorID, fakeProperties.vendorID);
- EXPECT_STREQ(properties.vendorName, fakeProperties.vendorName);
- EXPECT_STREQ(properties.architecture, fakeProperties.architecture);
- EXPECT_EQ(properties.deviceID, fakeProperties.deviceID);
- EXPECT_STREQ(properties.name, fakeProperties.name);
- EXPECT_STREQ(properties.driverDescription, fakeProperties.driverDescription);
- EXPECT_EQ(properties.backendType, fakeProperties.backendType);
- EXPECT_EQ(properties.adapterType, fakeProperties.adapterType);
+ EXPECT_EQ(properties.vendorID, fakeInfo.vendorID);
+ EXPECT_STREQ(properties.vendorName, fakeInfo.vendor);
+ EXPECT_STREQ(properties.architecture, fakeInfo.architecture);
+ EXPECT_EQ(properties.deviceID, fakeInfo.deviceID);
+ EXPECT_STREQ(properties.name, fakeInfo.device);
+ EXPECT_STREQ(properties.driverDescription, fakeInfo.description);
+ EXPECT_EQ(properties.backendType, fakeInfo.backendType);
+ EXPECT_EQ(properties.adapterType, fakeInfo.adapterType);
WGPUSupportedLimits limits = {};
EXPECT_EQ(wgpuAdapterGetLimits(adapter, &limits), WGPUStatus_Success);
@@ -280,17 +264,8 @@
info->architecture = "fake-architecture";
info->device = "fake adapter";
info->description = "hello world";
- return WGPUStatus_Success;
- })));
- EXPECT_CALL(api, AdapterGetProperties(apiAdapter, NotNull()))
- .WillOnce(WithArg<1>(Invoke([&](WGPUAdapterProperties* properties) {
- properties->vendorName = "fake-vendor";
- properties->architecture = "fake-architecture";
- properties->name = "fake adapter";
- properties->driverDescription = "hello world";
-
- WGPUChainedStructOut* chain = properties->nextInChain;
+ WGPUChainedStructOut* chain = info->nextInChain;
while (chain != nullptr) {
auto* next = chain->next;
switch (chain->sType) {
@@ -415,16 +390,6 @@
return WGPUStatus_Success;
})));
- EXPECT_CALL(api, AdapterGetProperties(apiAdapter, NotNull()))
- .WillOnce(WithArg<1>(Invoke([&](WGPUAdapterProperties* properties) {
- *properties = {};
- properties->vendorName = "";
- properties->architecture = "";
- properties->name = "";
- properties->driverDescription = "";
- return WGPUStatus_Success;
- })));
-
EXPECT_CALL(api, AdapterGetLimits(apiAdapter, NotNull()))
.WillOnce(WithArg<1>(Invoke([&](WGPUSupportedLimits* limits) {
*limits = {};
diff --git a/src/dawn/tests/unittests/wire/WireTest.cpp b/src/dawn/tests/unittests/wire/WireTest.cpp
index c339d65..eb687ec 100644
--- a/src/dawn/tests/unittests/wire/WireTest.cpp
+++ b/src/dawn/tests/unittests/wire/WireTest.cpp
@@ -108,16 +108,6 @@
return WGPUStatus_Success;
})));
- EXPECT_CALL(api, AdapterGetProperties(apiAdapter, NotNull()))
- .WillOnce(WithArg<1>(Invoke([&](WGPUAdapterProperties* properties) {
- *properties = {};
- properties->vendorName = "";
- properties->architecture = "";
- properties->name = "";
- properties->driverDescription = "";
- return WGPUStatus_Success;
- })));
-
EXPECT_CALL(api, AdapterGetLimits(apiAdapter, NotNull()))
.WillOnce(WithArg<1>(Invoke([&](WGPUSupportedLimits* limits) {
*limits = {};
diff --git a/src/dawn/wire/client/Adapter.cpp b/src/dawn/wire/client/Adapter.cpp
index 3b79825..68b9ebd 100644
--- a/src/dawn/wire/client/Adapter.cpp
+++ b/src/dawn/wire/client/Adapter.cpp
@@ -192,39 +192,17 @@
}
}
-void Adapter::SetProperties(const WGPUAdapterProperties* properties) {
- mProperties = *properties;
+void Adapter::SetProperties(const WGPUAdapterInfo* info) {
mProperties.nextInChain = nullptr;
-
- // Loop through the chained struct.
- WGPUChainedStructOut* chain = properties->nextInChain;
- while (chain != nullptr) {
- switch (chain->sType) {
- case WGPUSType_AdapterPropertiesMemoryHeaps: {
- // Make a copy of the heap info in `mMemoryHeapInfo`.
- const auto* memoryHeapProperties =
- reinterpret_cast<const WGPUAdapterPropertiesMemoryHeaps*>(chain);
- mMemoryHeapInfo = {
- memoryHeapProperties->heapInfo,
- memoryHeapProperties->heapInfo + memoryHeapProperties->heapCount};
- break;
- }
- case WGPUSType_AdapterPropertiesD3D: {
- auto* d3dProperties = reinterpret_cast<WGPUAdapterPropertiesD3D*>(chain);
- mD3DProperties.shaderModel = d3dProperties->shaderModel;
- break;
- }
- case WGPUSType_AdapterPropertiesVk: {
- auto* vkProperties = reinterpret_cast<WGPUAdapterPropertiesVk*>(chain);
- mVkProperties.driverVersion = vkProperties->driverVersion;
- break;
- }
- default:
- DAWN_UNREACHABLE();
- break;
- }
- chain = chain->next;
- }
+ mProperties.vendorID = info->vendorID;
+ mProperties.vendorName = info->vendor;
+ mProperties.architecture = info->architecture;
+ mProperties.deviceID = info->deviceID;
+ mProperties.name = info->device;
+ mProperties.driverDescription = info->description;
+ mProperties.adapterType = info->adapterType;
+ mProperties.backendType = info->backendType;
+ mProperties.compatibilityMode = info->compatibilityMode;
}
WGPUStatus Adapter::GetInfo(WGPUAdapterInfo* info) const {
diff --git a/src/dawn/wire/client/Adapter.h b/src/dawn/wire/client/Adapter.h
index 7e9fa6f..7e2a98b 100644
--- a/src/dawn/wire/client/Adapter.h
+++ b/src/dawn/wire/client/Adapter.h
@@ -50,7 +50,7 @@
void SetLimits(const WGPUSupportedLimits* limits);
void SetFeatures(const WGPUFeatureName* features, uint32_t featuresCount);
void SetInfo(const WGPUAdapterInfo* info);
- void SetProperties(const WGPUAdapterProperties* properties);
+ void SetProperties(const WGPUAdapterInfo* info);
WGPUStatus GetInfo(WGPUAdapterInfo* info) const;
WGPUStatus GetProperties(WGPUAdapterProperties* properties) const;
void RequestDevice(const WGPUDeviceDescriptor* descriptor,
diff --git a/src/dawn/wire/client/Instance.cpp b/src/dawn/wire/client/Instance.cpp
index 85b49b4..3689139 100644
--- a/src/dawn/wire/client/Instance.cpp
+++ b/src/dawn/wire/client/Instance.cpp
@@ -67,7 +67,6 @@
WGPURequestAdapterStatus status,
const char* message,
const WGPUAdapterInfo* info,
- const WGPUAdapterProperties* properties,
const WGPUSupportedLimits* limits,
uint32_t featuresCount,
const WGPUFeatureName* features) {
@@ -78,7 +77,7 @@
}
if (status == WGPURequestAdapterStatus_Success) {
mAdapter->SetInfo(info);
- mAdapter->SetProperties(properties);
+ mAdapter->SetProperties(info);
mAdapter->SetLimits(limits);
mAdapter->SetFeatures(features, featuresCount);
}
@@ -252,12 +251,11 @@
WGPURequestAdapterStatus status,
const char* message,
const WGPUAdapterInfo* info,
- const WGPUAdapterProperties* properties,
const WGPUSupportedLimits* limits,
uint32_t featuresCount,
const WGPUFeatureName* features) {
return GetEventManager(eventManager)
- .SetFutureReady<RequestAdapterEvent>(future.id, status, message, info, properties, limits,
+ .SetFutureReady<RequestAdapterEvent>(future.id, status, message, info, limits,
featuresCount, features);
}
diff --git a/src/dawn/wire/server/ServerInstance.cpp b/src/dawn/wire/server/ServerInstance.cpp
index 200df16..65c9b85 100644
--- a/src/dawn/wire/server/ServerInstance.cpp
+++ b/src/dawn/wire/server/ServerInstance.cpp
@@ -98,13 +98,9 @@
cmd.featuresCount = std::distance(features.begin(), it);
cmd.features = features.data();
+ // Query and report the adapter info.
WGPUAdapterInfo info = {};
- mProcs.adapterGetInfo(adapter, &info);
- cmd.info = &info;
-
- // Query and report the adapter properties.
- WGPUAdapterProperties properties = {};
- WGPUChainedStructOut** propertiesChain = &properties.nextInChain;
+ WGPUChainedStructOut** propertiesChain = &info.nextInChain;
// Query AdapterPropertiesMemoryHeaps if the feature is supported.
WGPUAdapterPropertiesMemoryHeaps memoryHeapProperties = {};
@@ -130,8 +126,8 @@
propertiesChain = &(*propertiesChain)->next;
}
- mProcs.adapterGetProperties(adapter, &properties);
- cmd.properties = &properties;
+ mProcs.adapterGetInfo(adapter, &info);
+ cmd.info = &info;
// Query and report the adapter limits, including DawnExperimentalSubgroupLimits.
WGPUSupportedLimits limits = {};
@@ -145,7 +141,6 @@
SerializeCommand(cmd);
mProcs.adapterInfoFreeMembers(info);
- mProcs.adapterPropertiesFreeMembers(properties);
mProcs.adapterPropertiesMemoryHeapsFreeMembers(memoryHeapProperties);
}