diff options
author | Alexander Orlenko <zxteam@gmail.com> | 2010-07-07 16:53:40 +1100 |
---|---|---|
committer | Alexander Orlenko <zxteam@gmail.com> | 2010-07-07 16:53:40 +1100 |
commit | 0e4f2355cbc8d85c304822e4acd3bb05eb68ec05 (patch) | |
tree | bc6a6b3a20c99ab4a0407851cbe13f61715f9d5d | |
parent | 7491fabec6f423f0bb94e22fbc9a2c15f73a2bf8 (diff) | |
download | bluez-tools-0e4f2355cbc8d85c304822e4acd3bb05eb68ec05.tar.gz |
Nothing interesting
-rw-r--r-- | src/bt-audio.c | 10 | ||||
-rw-r--r-- | src/bt-device.c | 6 | ||||
-rw-r--r-- | src/bt-monitor.c | 3 |
3 files changed, 16 insertions, 3 deletions
diff --git a/src/bt-audio.c b/src/bt-audio.c index 91fd10e..f76a647 100644 --- a/src/bt-audio.c +++ b/src/bt-audio.c @@ -32,13 +32,16 @@ static void audio_property_changed(Audio *audio, const gchar *name, const GValue *value, gpointer data) { + GMainLoop *mainloop = data; if (g_strcmp0(name, "state") == 0) { if (g_strcmp0(g_value_get_string(value), "connecting") == 0) { g_print("Connecting to an audio service\n"); } else if (g_strcmp0(g_value_get_string(value), "connected") == 0) { g_print("Audio service is connected\n"); + g_main_loop_quit(mainloop); } else { g_print("Audio service is disconnected\n"); + g_main_loop_quit(mainloop); } } } @@ -90,8 +93,10 @@ int main(int argc, char *argv[]) // TODO: Test to AUDIO service + GMainLoop *mainloop = g_main_loop_new(NULL, FALSE); + Audio *audio = g_object_new(AUDIO_TYPE, "DBusObjectPath", device_get_dbus_object_path(device), NULL); - g_signal_connect(audio, "PropertyChanged", G_CALLBACK(audio_property_changed), NULL); + g_signal_connect(audio, "PropertyChanged", G_CALLBACK(audio_property_changed), mainloop); if (connect_arg) { if (g_strcmp0(audio_get_state(audio), "connected") == 0) { @@ -101,6 +106,7 @@ int main(int argc, char *argv[]) } else { audio_connect(audio, &error); exit_if_error(error); + g_main_loop_run(mainloop); } } else if (disconnect_arg) { if (g_strcmp0(audio_get_state(audio), "disconnected") == 0) { @@ -108,9 +114,11 @@ int main(int argc, char *argv[]) } else { audio_disconnect(audio, &error); exit_if_error(error); + g_main_loop_run(mainloop); } } + g_main_loop_unref(mainloop); g_object_unref(audio); g_object_unref(device); g_object_unref(adapter); diff --git a/src/bt-device.c b/src/bt-device.c index 17b6d44..346e6b3 100644 --- a/src/bt-device.c +++ b/src/bt-device.c @@ -128,9 +128,10 @@ int main(int argc, char *argv[]) gchar *created_device = adapter_create_paired_device_end(adapter, &error); exit_if_error(error); + g_print("Done\n"); g_main_loop_unref(mainloop); - g_object_unref(agent); g_free(created_device); + g_object_unref(agent); } else if (remove_arg) { Device *device = find_device(adapter, remove_arg, &error); exit_if_error(error); @@ -176,9 +177,10 @@ int main(int argc, char *argv[]) g_hash_table_iter_init(&iter, device_services); while (g_hash_table_iter_next(&iter, &key, &value)) { - g_print("%d -> %s\n", (guint)key, value); + g_print("%d -> %s\n", key, value); } + g_print("Done\n"); g_object_unref(device); } else if (set_arg) { set_device_arg = argv[1]; diff --git a/src/bt-monitor.c b/src/bt-monitor.c index fc3c281..83dc5a6 100644 --- a/src/bt-monitor.c +++ b/src/bt-monitor.c @@ -318,6 +318,9 @@ int main(int argc, char *argv[]) // TODO: Add SIGINT handler (Ctrl+C) + g_main_loop_unref(mainloop); + g_object_unref(manager); + exit(EXIT_SUCCESS); } |