Diff between f2120e3ded0656c8eda3d8058ee35654aba3fd09 and 05ede13d22df024a0cdc4d449d8329da36950995

Changed Files

File Additions Deletions Status
src/adapter.c +6 -1 modified

Full Patch

diff --git a/src/adapter.c b/src/adapter.c
index f66024b..c21b380 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -5634,8 +5634,13 @@ static void add_device_complete(uint8_t status, uint16_t length,
 	if (btd_opts.device_privacy) {
 		uint32_t flags = btd_device_get_current_flags(dev);
 
-		/* Set Device Privacy Mode has not set the flag yet. */
+		/* Set Device Privacy Mode if it has not set the flag yet. */
 		if (!(flags & DEVICE_FLAG_DEVICE_PRIVACY)) {
+			/* Include the pending flags, or they may get
+			 * overwritten.
+			 */
+			flags |= btd_device_get_pending_flags(dev);
+
 			adapter_set_device_flags(adapter, dev, flags |
 						DEVICE_FLAG_DEVICE_PRIVACY,
 						set_device_privacy_complete,