mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/spice-gtk
synced 2026-02-02 02:34:54 +00:00
Rather than returning the whole ConnectAsyncData struct with g_task_return_pointer(), we can return only the GIOStream object as this is what we are interested in. This has the side-effect of fixing a ConnectAsyncData leak as after calling g_task_propagate_pointer() the old code had ownership of the ConnectAsyncData instance but was never freeing it. The leak is: ==20010== 4,348 (56 direct, 4,292 indirect) bytes in 1 blocks are definitely lost in loss record 20,762 of 20,999 ==20010== at 0x4C2DA60: calloc (vg_replace_malloc.c:711) ==20010== by 0xD0F6EB0: g_malloc0 (gmem.c:124) ==20010== by 0x75C0978: wocky_http_proxy_connect_async (wocky-http-proxy.c:359) ==20010== by 0xCB4E22C: g_socket_client_connected_callback (gsocketclient.c:1548) ==20010== by 0xCB57342: g_task_return_now (gtask.c:1107) ==20010== by 0xCB579E5: g_task_return (gtask.c:1165) ==20010== by 0xCB4FB1C: g_socket_connection_connect_callback (gsocketconnection.c:236) ==20010== by 0xCB47160: socket_source_dispatch (gsocket.c:3543) ==20010== by 0xD0F1702: g_main_dispatch (gmain.c:3154) ==20010== by 0xD0F1702: g_main_context_dispatch (gmain.c:3769) ==20010== by 0xD0F1AAF: g_main_context_iterate.isra.29 (gmain.c:3840) ==20010== by 0xD0F1B5B: g_main_context_iteration (gmain.c:3901) ==20010== by 0xCB7D58C: g_application_run (gapplication.c:2381) ==20010== by 0x41571C: main (remote-viewer-main.c:42) |
||
|---|---|---|
| build-aux | ||
| data | ||
| doc | ||
| m4 | ||
| man | ||
| po | ||
| spice-common@62f3024f42 | ||
| src | ||
| tests | ||
| vapi | ||
| .gitmodules | ||
| .mailmap | ||
| AUTHORS | ||
| autogen.sh | ||
| configure.ac | ||
| COPYING | ||
| git.mk | ||
| Makefile.am | ||
| NEWS | ||
| README | ||
| spice-client-glib-2.0.pc.in | ||
| spice-client-gtk-3.0.pc.in | ||
| spice-controller.pc.in | ||
| TODO | ||
spice-gtk
=========
A Gtk client and libraries for SPICE remote desktop servers.
Please report bugs at: spice-devel@lists.freedesktop.org
Project content
---------------
libspice-client-glib-2.0
provides glib objects for spice protocol decoding and surface rendering.
* SpiceSession (see spice-session.h).
* SpiceChannel (see spice-channel.h).
* SpiceAudio (see spice-audio.h).
* Various Spice<Type>Channel (see channel-<type>.h).
libspice-client-gtk-3.0
provides gtk widget to show spice display and accept user input.
* SpiceDisplay (see spice-widget.h)
spicy
a gtk test client. The recommended client for end user is
virt-viewer (http://git.fedorahosted.org/cgit/virt-viewer.git/)
spicy-screenshot
Command line tool, connects to spice server and writes out a
screen shot.
spicy-stats
Command line tool, connects to spice server and writes out a
summary of connection details, amount of bytes transferred...
SpiceClientGlib and SpiceClientGtk GObject-introspection modules.
Build dependencies:
------------------
. On Fedora use:
dnf builddep spice-gtk
. or install:
gtk3-devel spice-protocol intltool
openssl-devel pulseaudio-libs-devel pixman-devel
gobject-introspection-devel libjpeg-turbo-devel zlib-devel
cyrus-sasl-devel gtk-doc
. The GStreamer backend needs:
gstreamer1-devel gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-bad-free
. If you build from git, you'll also need:
libtool automake vala vala-tools perl-Text-CSV