Don't try to use dict graph interface on jack graphs
This commit is contained in:
parent
4288c9a35b
commit
fa47499b45
|
@ -650,7 +650,7 @@ void on_event_jack_started(void)
|
|||
g_studio.jack_conf_valid = true;
|
||||
g_studio.jack_running = true;
|
||||
|
||||
if (!graph_proxy_create(JACKDBUS_SERVICE_NAME, JACKDBUS_OBJECT_PATH, &g_studio.jack_graph_proxy))
|
||||
if (!graph_proxy_create(JACKDBUS_SERVICE_NAME, JACKDBUS_OBJECT_PATH, false, &g_studio.jack_graph_proxy))
|
||||
{
|
||||
lash_error("graph_proxy_create() failed for jackdbus");
|
||||
}
|
||||
|
|
|
@ -55,6 +55,7 @@ struct graph
|
|||
char * object;
|
||||
uint64_t version;
|
||||
bool active;
|
||||
bool graph_dict_supported;
|
||||
};
|
||||
|
||||
static DBusHandlerResult message_hook(DBusConnection *, DBusMessage *, void *);
|
||||
|
@ -363,6 +364,7 @@ bool
|
|||
graph_proxy_create(
|
||||
const char * service,
|
||||
const char * object,
|
||||
bool graph_dict_supported,
|
||||
graph_proxy_handle * graph_proxy_handle_ptr)
|
||||
{
|
||||
struct graph * graph_ptr;
|
||||
|
@ -393,6 +395,8 @@ graph_proxy_create(
|
|||
graph_ptr->version = 0;
|
||||
graph_ptr->active = false;
|
||||
|
||||
graph_ptr->graph_dict_supported = graph_dict_supported;
|
||||
|
||||
*graph_proxy_handle_ptr = (graph_proxy_handle)graph_ptr;
|
||||
|
||||
return true;
|
||||
|
@ -779,11 +783,17 @@ graph_proxy_dict_entry_set(
|
|||
const char * key,
|
||||
const char * value)
|
||||
{
|
||||
if (!graph_ptr->graph_dict_supported)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!dbus_call(graph_ptr->service, graph_ptr->object, IFACE_GRAPH_DICT, "Set", "utss", &object_type, &object_id, &key, &value, ""))
|
||||
{
|
||||
lash_error(IFACE_GRAPH_DICT ".Set() failed.");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -801,6 +811,11 @@ graph_proxy_dict_entry_get(
|
|||
const char * cvalue_ptr;
|
||||
char * value_ptr;
|
||||
|
||||
if (!graph_ptr->graph_dict_supported)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!dbus_call(graph_ptr->service, graph_ptr->object, IFACE_GRAPH_DICT, "Get", "uts", &object_type, &object_id, &key, NULL, &reply_ptr))
|
||||
{
|
||||
lash_error(IFACE_GRAPH_DICT ".Get() failed.");
|
||||
|
@ -836,10 +851,16 @@ graph_proxy_dict_entry_drop(
|
|||
uint64_t object_id,
|
||||
const char * key)
|
||||
{
|
||||
if (!graph_ptr->graph_dict_supported)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!dbus_call(graph_ptr->service, graph_ptr->object, IFACE_GRAPH_DICT, "Drop", "uts", &object_type, &object_id, &key, ""))
|
||||
{
|
||||
lash_error(IFACE_GRAPH_DICT ".Drop() failed.");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -42,6 +42,7 @@ bool
|
|||
graph_proxy_create(
|
||||
const char * service,
|
||||
const char * object,
|
||||
bool graph_dict_supported,
|
||||
graph_proxy_handle * graph_proxy_ptr);
|
||||
|
||||
void
|
||||
|
|
|
@ -50,7 +50,14 @@ void view_init(void)
|
|||
g_current_view = NULL;
|
||||
}
|
||||
|
||||
bool create_view(const char * name, const char * service, const char * object, bool force_activate, graph_view_handle * handle_ptr)
|
||||
bool
|
||||
create_view(
|
||||
const char * name,
|
||||
const char * service,
|
||||
const char * object,
|
||||
bool graph_dict_supported,
|
||||
bool force_activate,
|
||||
graph_view_handle * handle_ptr)
|
||||
{
|
||||
struct graph_view * view_ptr;
|
||||
|
||||
|
@ -68,7 +75,7 @@ bool create_view(const char * name, const char * service, const char * object, b
|
|||
goto free_view;
|
||||
}
|
||||
|
||||
if (!graph_proxy_create(service, object, &view_ptr->graph))
|
||||
if (!graph_proxy_create(service, object, graph_dict_supported, &view_ptr->graph))
|
||||
{
|
||||
goto free_name;
|
||||
}
|
||||
|
|
|
@ -32,7 +32,16 @@
|
|||
typedef struct graph_view_tag { int unused; } * graph_view_handle;
|
||||
|
||||
void view_init(void);
|
||||
bool create_view(const char * name, const char * service, const char * object, bool force_activate, graph_view_handle * handle_ptr);
|
||||
|
||||
bool
|
||||
create_view(
|
||||
const char * name,
|
||||
const char * service,
|
||||
const char * object,
|
||||
bool graph_dict_supported,
|
||||
bool force_activate,
|
||||
graph_view_handle * handle_ptr);
|
||||
|
||||
void destroy_view(graph_view_handle view);
|
||||
void activate_view(graph_view_handle view);
|
||||
const char * get_view_name(graph_view_handle view);
|
||||
|
|
|
@ -458,7 +458,7 @@ void control_proxy_on_studio_appeared(void)
|
|||
goto free_name;
|
||||
}
|
||||
|
||||
if (!create_view(name, SERVICE_NAME, STUDIO_OBJECT_PATH, false, &g_studio_view))
|
||||
if (!create_view(name, SERVICE_NAME, STUDIO_OBJECT_PATH, true, false, &g_studio_view))
|
||||
{
|
||||
lash_error("create_view() failed for studio");
|
||||
goto free_name;
|
||||
|
@ -545,7 +545,7 @@ void jack_appeared(void)
|
|||
{
|
||||
lash_info("JACK appeared");
|
||||
|
||||
if (!create_view("Raw JACK", JACKDBUS_SERVICE_NAME, JACKDBUS_OBJECT_PATH, true, &g_jack_view))
|
||||
if (!create_view("Raw JACK", JACKDBUS_SERVICE_NAME, JACKDBUS_OBJECT_PATH, false, true, &g_jack_view))
|
||||
{
|
||||
lash_error("create_view() failed for jack");
|
||||
return;
|
||||
|
|
Loading…
Reference in New Issue