mirror of
https://git.kernel.org/pub/scm/bluetooth/bluez.git
synced 2024-12-02 00:24:25 +08:00
8be70369bd
This adds a setpath_op_complete callback, that unpacks the user data and finally calls the user callback. The callback is now used for success and error cases. The previous implementation was using setpath_complete which did not work for error cases, because it was called with incorrect user data. This was leading to a crash, that can be reproduced by disconnecting PBAP after trying to select a non existing phone book. 0 setpath_complete (session=0x66bd90, transfer=0x0, err=0x69b370, user_data=0x69a810) at obexd/client/session.c:912 1 0x000000000042d100 in obc_session_shutdown (session=0x66bd90) at obexd/client/session.c:537 2 0x000000000040f227 in service_filter (connection=0x664b20, message=<optimized out>, user_data=0x66bed0) at gdbus/watch.c:486 3 0x000000000040f49b in message_filter (connection=0x664b20, message=0x66ba30, user_data=<optimized out>) at gdbus/watch.c:554 4 0x00007ffff72f40a6 in dbus_connection_dispatch () from /usr/lib/libdbus-1.so.3 5 0x000000000040e148 in message_dispatch (data=0x664b20) at gdbus/mainloop.c:76 6 0x00007ffff702e9a3 in ?? () from /usr/lib/libglib-2.0.so.0 7 0x00007ffff702de46 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 8 0x00007ffff702e198 in ?? () from /usr/lib/libglib-2.0.so.0 9 0x00007ffff702e59a in g_main_loop_run () from /usr/lib/libglib-2.0.so.0 10 0x000000000040dd72 in main (argc=1, argv=0x7fffffffddc8) at obexd/src/main.c:319 |
||
---|---|---|
.. | ||
client | ||
plugins | ||
src |