aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2020-06-27 14:49:38 +0200
committerSven Gothel <[email protected]>2020-06-27 14:49:38 +0200
commit83e0c7f75b4206701c1b9c62ebd4282f50f92a31 (patch)
treebb1ff53fd21564de75a7387451811fdade45961f /src
parent406c56e2ebe96358ffd6000b033e0f99f87c66ac (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.cpp2
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() ) {