From f8a8646b5cc0e9b59a5f953dcd8129c93d162915 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Wed, 27 Apr 2016 09:56:53 +0200 Subject: add tracers for the notification warning --- src/usb-manager.cpp | 11 +++++++++-- src/usb-snap.cpp | 6 ++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/usb-manager.cpp b/src/usb-manager.cpp index 9f67720..ce546fe 100644 --- a/src/usb-manager.cpp +++ b/src/usb-manager.cpp @@ -50,6 +50,8 @@ public: }); m_greeter->state().changed().connect([this](Greeter::State /*state*/) { +g_message("%s clearing old snap, if any", G_STRLOC); + clear_snap(); g_message("%s greeter state changed; calling maybe_snap()", G_STRLOC); maybe_snap(); }); @@ -67,11 +69,16 @@ g_message("%s greeter state changed; calling maybe_snap()", G_STRLOC); private: - void clear() + void clear_snap() { - // clear out old state m_snap_connections.clear(); m_snap.reset(); + } + + void clear() + { + // clear out old state + clear_snap(); m_req = decltype(m_req)(); m_adbd_client.reset(); } diff --git a/src/usb-snap.cpp b/src/usb-snap.cpp index ba964fb..2b5424d 100644 --- a/src/usb-snap.cpp +++ b/src/usb-snap.cpp @@ -119,6 +119,7 @@ private: g_variant_builder_add(&hints_builder, "{sv}", "x-canonical-snap-decisions", g_variant_new_string("true")); g_variant_builder_add(&hints_builder, "{sv}", "x-canonical-private-affirmative-tint", g_variant_new_string("true")); +g_message("%s calling notification notify", G_STRLOC); auto args = g_variant_new("(susssasa{sv}i)", "", uint32_t(0), @@ -153,6 +154,7 @@ private: g_warning("UsbSnap: Error calling Notify: %s", error->message); g_clear_error(&error); } else { +g_message("%s on_notify reply %s", G_STRLOC, g_variant_print(reply, true)); uint32_t id {}; g_variant_get(reply, "(u)", &id); static_cast(gself)->on_notify_reply(id); @@ -162,6 +164,7 @@ private: void on_notify_reply(uint32_t id) { +g_message("%s setting m_notification_id to %d", G_STRLOC, int(id)); m_notification_id = id; } @@ -177,6 +180,7 @@ private: g_return_if_fail(!g_strcmp0(interface_name, DBusNames::Notify::INTERFACE)); auto self = static_cast(gself); +g_message("%s got signal %s with parameters %s", G_STRLOC, signal_name, g_variant_print(parameters, true)); if (!g_strcmp0(signal_name, DBusNames::Notify::ActionInvoked::NAME)) { @@ -212,9 +216,11 @@ private: void on_notification_closed(uint32_t close_reason) { +g_message("%s closed with reason %d", G_STRLOC, int(close_reason)); if (close_reason == DBusNames::Notify::NotificationClosed::Reason::EXPIRED) m_on_user_response(AdbdClient::PKResponse::DENY, false); +g_message("%s setting m_notification_id to 0", G_STRLOC); m_notification_id = 0; } -- cgit v1.2.3