Duplicate ABIs exported by spice-glib and spice-gtk
Not causing many problems at the moment but 5 functions are exported and implemented by both spice-glib
and spice-gtk
libraries. Specifically:
-
spice_g_signal_connect_object
; -
spice_util_get_debug
; -
spice_util_get_version_string
; -
spice_util_set_debug
; -
spice_uuid_to_string
. Most of them will behave properly and as expected howeverspice_util_get_debug
andspice_util_set_debug
save the state in library variables but there are 2 versions of them (one inspice-glib
and another inspice-tk
). So potentially you could enable debug withspice_util_set_debug
but then some debug information won't be printed as they rely on other libraryspice_util_get_debug
.
Beside that duplicating exports were not intended. But unfortunately they now are in the ABI and both libraries should continue to export them.
To fix that I would introduce 5 new functions in spice-glib
(were these functions should be) and have all functions (from both libraries) call the new ones. Also, to avoid future mistakes like that it would be nice to have 2 separate symbols file, one for spice-glib
and another for spice-gtk
.