Joan Torres
543e26d9be
* Default installation of native viewer can once again handle VncAuth * Graphic acceleration now can now be disabled through the vncserver config file the same way as other features * Command vncpasswd can again correctly update passwords * Native viewer once again consider passwd file that contain more than one password valid * Native viewer can once again connect to RealVNC servers * Users of x0vncserver should no longer experience the mouse cursor moving to the upper left corner * H264 encoding no longer causes crashing - Removed patches (no longer needed): * u_tigervnc-Change-button-layout-in-ServerDialog.patch - Refreshed patches: * n_tigervnc-Date-time.patch * n_tigervnc-Dont-sign-java-client.patch * n_tigervnc-reproducible-jar-mtime.patch * u_tigervnc-Add-autoaccept-parameter.patch * u_tigervnc-Build-libXvnc-as-separate-library.patch * u_tigervnc-Ignore-epipe-on-write.patch - Fix path on vncviewer desktop file. Use %use_update_alternative OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/tigervnc?expand=0&rev=268
27 lines
1.1 KiB
Diff
27 lines
1.1 KiB
Diff
Author: Michal Srb <msrb@suse.com>
|
|
Subject: Ignore EPIPE on write.
|
|
Patch-Mainline: To be upstreamed
|
|
References: bnc#864676
|
|
|
|
If the VNC server closes connection after our last read and before this write, we will report error message about EPIPE.
|
|
This situation is no error, however, we should quit normally same as when we find out that connection was closed during read.
|
|
Index: tigervnc-1.13.1/common/rdr/FdOutStream.cxx
|
|
===================================================================
|
|
--- tigervnc-1.13.1.orig/common/rdr/FdOutStream.cxx
|
|
+++ tigervnc-1.13.1/common/rdr/FdOutStream.cxx
|
|
@@ -133,8 +133,12 @@ size_t FdOutStream::writeFd(const uint8_t* data, size_t length)
|
|
#endif
|
|
} while (n < 0 && (errorNumber == EINTR));
|
|
|
|
- if (n < 0)
|
|
- throw SystemException("write", errorNumber);
|
|
+ if (n < 0) {
|
|
+ if (errorNumber == EPIPE)
|
|
+ n = length; // Ignore EPIPE and fake successfull write, it doesn't matter that we are writing to closed socket, we will find out once we try to read from it.
|
|
+ else
|
|
+ throw SystemException("write", errorNumber);
|
|
+ }
|
|
|
|
gettimeofday(&lastWrite, NULL);
|
|
|