Got caught by this one! However I do feel that null-testing clutters flow of code. You could invert the control and delegate the responsibility of registering a callback if returnedResults is not null to PromiseBridge, eg.
```
PromiseBridge.addResultCallback(result, returnedResult);
...

class PromiseBridge {
   static void addResultCallback(Object result, SettableFuture<ReturnedResult> returnedResult) {
       if(returnedResult != null) {
            Futures.addCallback(result, new PromiseBridge<Object>(returnedResult));
       }
    }
``` 

Not sure `addResultCallback` is a good name though