From dfc2c89fb0369a2ca928f50695916c90739f6442 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Wed, 19 Aug 2026 17:15:34 +0000 Subject: [PATCH] fix: Synchronize provider state access on the state lock Co-Authored-By: rlamb@launchdarkly.com <4955475+kinyoklion@users.noreply.github.com> --- .../launchdarkly/openfeature/serverprovider/Provider.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/launchdarkly/openfeature/serverprovider/Provider.java b/src/main/java/com/launchdarkly/openfeature/serverprovider/Provider.java index acb8e15..4fcefe7 100644 --- a/src/main/java/com/launchdarkly/openfeature/serverprovider/Provider.java +++ b/src/main/java/com/launchdarkly/openfeature/serverprovider/Provider.java @@ -131,7 +131,7 @@ public ProviderEvaluation getObjectEvaluation(String key, Value defaultVa @Override public ProviderState getState() { - synchronized (state) { + synchronized (stateLock) { return state; } } @@ -141,7 +141,7 @@ public void initialize(EvaluationContext evaluationContext) throws Exception { // If we are ready, then set the state. Don't return, because we still need to listen for future // changes. if (client.isInitialized()) { - state = ProviderState.READY; + setState(ProviderState.READY); } var completer = new CompletableFuture(); @@ -155,7 +155,7 @@ public void initialize(EvaluationContext evaluationContext) throws Exception { handleDataSourceStatus(res, completer); }); - if(state == ProviderState.READY) { + if (getState() == ProviderState.READY) { return; }