mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/spice-gtk
synced 2026-02-02 19:33:15 +00:00
This patch avoids a race condition. The race happens when we mark the xfer-task as completed by receiving VD_AGENT_FILE_XFER_STATUS_SUCCESS message while the flush callback was not yet called. The flush callback is file_xfer_data_flushed_cb() and it might not be called immediately after data is flushed. The race can be verified while transferring several small files at once. I can see it often with more then 50 files in one transfer operation. This fix implies that SpiceMainChannel should check in its async callbacks if given SpiceFileTransferTask is completed. This patch introduces spice_file_transfer_task_is_completed (internal) to help check if spice_file_transfer_task_completed() was called or not. Acked-by: Christophe Fergeau <cfergeau@redhat.com> |
||
|---|---|---|
| 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