Revert "Remove deprecated `APIReference()`"
This reverts commit cbe795822ae42b4b8751f377fe6e9044ad12dd7e.
Reason for revert: dawn into chromium auto roller is broken
https://ci.chromium.org/ui/p/chromium/builders/try/android-arm64-rel/587482/overview
Original change's description:
> Remove deprecated `APIReference()`
>
> This patch removes the deprecated API `APIReference()` from Dawn.
>
> Bug: dawn:2234
> Change-Id: I238f65c5e49d0abd04ee9c66bb0c0c52e73822ea
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/187707
> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
> Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
TBR=cwallez@chromium.org,jiawei.shao@intel.com,enga@chromium.org,dawn-scoped@luci-project-accounts.iam.gserviceaccount.com,lokokung@google.com
Change-Id: Iefe18730f866d30f61d13eda77a8cb42319cf2df
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: dawn:2234
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/188060
Auto-Submit: Peng Huang <penghuang@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
diff --git a/generator/dawn_json_generator.py b/generator/dawn_json_generator.py
index a5b9b7e..8da2fb0 100644
--- a/generator/dawn_json_generator.py
+++ b/generator/dawn_json_generator.py
@@ -964,6 +964,8 @@
def c_methods(params, typ):
return typ.methods + [
+ # TODO(dawn:2234): Deprecated. Remove when no longer used.
+ Method(Name('reference'), params['types']['void'], [], False, {}),
Method(Name('add ref'), params['types']['void'], [], False, {}),
Method(Name('release'), params['types']['void'], [], False, {}),
]
diff --git a/generator/templates/api.h b/generator/templates/api.h
index 80d4991..43b495e 100644
--- a/generator/templates/api.h
+++ b/generator/templates/api.h
@@ -73,6 +73,8 @@
#include <stdint.h>
#include <stddef.h>
+#define WGPU_BREAKING_REFERENCE_ADDREF
+
#if defined(__cplusplus)
# if __cplusplus >= 201103L
# define {{API}}_MAKE_INIT_STRUCT(type, value) (type value)
diff --git a/src/dawn/common/RefCounted.h b/src/dawn/common/RefCounted.h
index cf062d2..0d06e04 100644
--- a/src/dawn/common/RefCounted.h
+++ b/src/dawn/common/RefCounted.h
@@ -76,6 +76,8 @@
// synchronization in place for destruction.
void Release();
+ // TODO(dawn:2234): Deprecated. Remove when no longer used.
+ void APIReference() { APIAddRef(); }
void APIAddRef() { AddRef(); }
void APIRelease() { Release(); }
diff --git a/src/dawn/fuzzers/DawnWireServerFuzzer.cpp b/src/dawn/fuzzers/DawnWireServerFuzzer.cpp
index 5512b5d..3797267 100644
--- a/src/dawn/fuzzers/DawnWireServerFuzzer.cpp
+++ b/src/dawn/fuzzers/DawnWireServerFuzzer.cpp
@@ -120,7 +120,7 @@
for (dawn::native::Adapter adapter : adapters) {
if (sAdapterSupported(adapter)) {
WGPUAdapter cAdapter = adapter.Get();
- dawn::native::GetProcs().adapterAddRef(cAdapter);
+ dawn::native::GetProcs().adapterReference(cAdapter);
callback(WGPURequestAdapterStatus_Success, cAdapter, nullptr, userdata);
return;
}
diff --git a/src/dawn/native/RefCountedWithExternalCount.h b/src/dawn/native/RefCountedWithExternalCount.h
index 524e988..64b4e5d 100644
--- a/src/dawn/native/RefCountedWithExternalCount.h
+++ b/src/dawn/native/RefCountedWithExternalCount.h
@@ -48,6 +48,8 @@
using T::Release;
using T::T;
+ // TODO(dawn:2234): Deprecated. Remove when no longer used.
+ void APIReference() { APIAddRef(); }
void APIAddRef() {
IncrementExternalRefCount();
T::APIAddRef();
@@ -57,7 +59,7 @@
if (mExternalRefCount.Decrement()) {
WillDropLastExternalRef();
}
- T::Release();
+ T::APIRelease();
}
void IncrementExternalRefCount() { mExternalRefCount.Increment(); }