diff options
author | Sven Gothel <[email protected]> | 2020-06-27 14:49:38 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2020-06-27 14:49:38 +0200 |
commit | 83e0c7f75b4206701c1b9c62ebd4282f50f92a31 (patch) | |
tree | bb1ff53fd21564de75a7387451811fdade45961f /src | |
parent | 406c56e2ebe96358ffd6000b033e0f99f87c66ac (diff) |
Notify DBTNativeDownlink when its native JavaUplink -> JavaGlobalObj counterpart gets destructed
DBTNativeDownlink.notifyDeleted() gets called from native destructor,
so isValid and nativeInstance can be set accordingly.
This resolves a periodic crash when GATTHandler flushes it's GATTServices and linked resources.
Here the DBTGATTService.java's DBTNativeDownlink still holds the native instance handle
and as it gets finalized after the native object, accessing it post mortem causes a SIGSEGV.
Diffstat (limited to 'src')
-rw-r--r-- | src/direct_bt/GATTHandler.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/direct_bt/GATTHandler.cpp b/src/direct_bt/GATTHandler.cpp index 3252deb2..2eb45f7c 100644 --- a/src/direct_bt/GATTHandler.cpp +++ b/src/direct_bt/GATTHandler.cpp @@ -267,7 +267,7 @@ bool GATTHandler::connect() { return true; } hasIOError = false; - INFO_PRINT("GATTHandler::connect: Start: GattHandler[%s], l2cap[%s]: %s", + DBG_PRINT("GATTHandler::connect: Start: GattHandler[%s], l2cap[%s]: %s", getStateString().c_str(), l2cap.getStateString().c_str(), deviceString.c_str()); if( !l2cap.connect() || !validateConnected() ) { |