[Evolution] Bug#849004: jessie-pu: package evolution-data-server/3.12.9~git20141128.5242b0-2+deb8u2
Wouter Verhelst
wouter at debian.org
Wed Dec 21 17:45:20 UTC 2016
Package: release.debian.org
Severity: normal
Tags: jessie
User: release.debian.org at packages.debian.org
Usertags: pu
I'd like to see an update for #787398 in jessie, as a customer of mine has
hit this bug, and it's a particularly nasty one.
proposed debdiff:
diff -Nru evolution-data-server-3.12.9~git20141128.5242b0/debian/changelog evolution-data-server-3.12.9~git20141128.5242b0/debian/changelog
--- evolution-data-server-3.12.9~git20141128.5242b0/debian/changelog 2015-03-25 12:16:25.000000000 +0100
+++ evolution-data-server-3.12.9~git20141128.5242b0/debian/changelog 2016-12-21 18:31:01.000000000 +0100
@@ -1,3 +1,13 @@
+evolution-data-server (3.12.9~git20141128.5242b0-2+deb8u2.1) jessie; urgency=medium
+
+ * Non-maintainer upload.
+ * d/p/06_787398_bae0c64_fix_connection_drop.patch: cherry-pick commit
+ bae0c64 from upstream git to fix premature drop of connection with
+ reduced TCP window sizes and resulting loss of data. Closes:
+ #787398.
+
+ -- Wouter Verhelst <wouter at debian.org> Wed, 21 Dec 2016 18:31:01 +0100
+
evolution-data-server (3.12.9~git20141128.5242b0-2+deb8u2) unstable; urgency=medium
* d/p/05_imapx-Shared-folders-removed-folder-list-refresh.patch: Fix shared
diff -Nru evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/06_787398_bae0c64_fix_connection_drop.patch evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/06_787398_bae0c64_fix_connection_drop.patch
--- evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/06_787398_bae0c64_fix_connection_drop.patch 1970-01-01 01:00:00.000000000 +0100
+++ evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/06_787398_bae0c64_fix_connection_drop.patch 2016-12-21 18:31:01.000000000 +0100
@@ -0,0 +1,58 @@
+Description: Make camel_stream_write() try to write all bytes at once
+ The default implementation of CamelStream::write() used
+ g_output_stream_write() method, which could write only a partial content,
+ returning how many bytes had been actually written. That's fine, but not each
+ caller counted with this, thus for example a CamelStreamFilter::write() failed
+ when only partial buffer had been written, which could cause a silent failure
+ on message send. Easier than taking care of the not-whole-buffer-written state
+ at each place of the usage is to use g_output_stream_write_all() function
+ instead, which fails only on errors.
+ .
+ evolution-data-server (3.12.9~git20141128.5242b0-2+deb8u2) unstable; urgency=medium
+ .
+ * d/p/05_imapx-Shared-folders-removed-folder-list-refresh.patch: Fix shared
+ IMAP folders disappearing in some situations.
+Author: Milan Crha <mcrha at redhat.com>
+Origin: upstream, https://git.gnome.org/browse/evolution-data-server/commit/?id=bae0c64
+Bug-Debian: https://bugs.debian.org/787398
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/evolution-data-server/+bug/1442756/
+Forwarded: not-needed
+Last-Update: 2016-12-21
+
+---
+The information above should follow the Patch Tagging Guidelines, please
+checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
+are templates for supplementary fields that you might want to add:
+
+
+--- evolution-data-server-3.12.9~git20141128.5242b0.orig/camel/camel-stream.c
++++ evolution-data-server-3.12.9~git20141128.5242b0/camel/camel-stream.c
+@@ -149,20 +149,25 @@ stream_write (CamelStream *stream,
+ GError **error)
+ {
+ GIOStream *base_stream;
+- gssize n_bytes_written = (gssize) n;
++ gssize n_bytes_written = -1;
+
+ base_stream = camel_stream_ref_base_stream (stream);
+
+ if (base_stream != NULL) {
+ GOutputStream *output_stream;
++ gsize n_written = 0;
+
+ output_stream = g_io_stream_get_output_stream (base_stream);
+ stream->eos = FALSE;
+
+- n_bytes_written = g_output_stream_write (
+- output_stream, buffer, n, cancellable, error);
++ if (g_output_stream_write_all (output_stream, buffer, n, &n_written, cancellable, error))
++ n_bytes_written = (gssize) n_written;
++ else
++ n_bytes_written = -1;
+
+ g_object_unref (base_stream);
++ } else {
++ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, _("Cannot write with no base stream"));
+ }
+
+ return n_bytes_written;
diff -Nru evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/series evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/series
--- evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/series 2015-02-12 10:57:14.000000000 +0100
+++ evolution-data-server-3.12.9~git20141128.5242b0/debian/patches/series 2016-12-21 18:27:51.000000000 +0100
@@ -2,3 +2,4 @@
03_Use-after-free-gpg-verif.patch
04_sqlite-Track-pending-sync-requests.patch
05_imapx-Shared-folders-removed-folder-list-refresh.patch
+06_787398_bae0c64_fix_connection_drop.patch
-- System Information:
Debian Release: stretch/sid
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'unreleased'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, m68k, arm64
Kernel: Linux 4.8.0-2-amd64 (SMP w/8 CPU cores)
Locale: LANG=nl_BE.UTF-8, LC_CTYPE=nl_BE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
More information about the Pkg-evolution-maintainers
mailing list