diff options
author | ohauer <ohauer@FreeBSD.org> | 2014-06-11 02:31:36 +0800 |
---|---|---|
committer | ohauer <ohauer@FreeBSD.org> | 2014-06-11 02:31:36 +0800 |
commit | aa26705a2b5d51486b0af76ea7fc1f139971f4cd (patch) | |
tree | b29ddf3a11ddbe5a212de4fb356541f4601bcd19 /www/serf | |
parent | b09f46b5f2bf583a6842467941ba7aa8ed675aef (diff) | |
download | freebsd-ports-gnome-aa26705a2b5d51486b0af76ea7fc1f139971f4cd.tar.gz freebsd-ports-gnome-aa26705a2b5d51486b0af76ea7fc1f139971f4cd.tar.zst freebsd-ports-gnome-aa26705a2b5d51486b0af76ea7fc1f139971f4cd.zip |
- update to 1.3.6
Changelog:
Serf 1.3.6 [2014-06-09, from /tags/1.3.6, rxxxx]
Revert r2319 from serf 1.3.5: this change was making serf call handle_response
multiple times in case of an error response, leading to unexpected behavior.
Diffstat (limited to 'www/serf')
-rw-r--r-- | www/serf/Makefile | 3 | ||||
-rw-r--r-- | www/serf/distinfo | 4 | ||||
-rw-r--r-- | www/serf/files/patch-outgoing.c | 47 |
3 files changed, 3 insertions, 51 deletions
diff --git a/www/serf/Makefile b/www/serf/Makefile index 198c6a3eb06a..3f45bfbfdac1 100644 --- a/www/serf/Makefile +++ b/www/serf/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= serf -PORTVERSION= 1.3.5 -PORTREVISION= 1 +PORTVERSION= 1.3.6 CATEGORIES= www MASTER_SITES= http://serf.googlecode.com/svn/src_releases/ diff --git a/www/serf/distinfo b/www/serf/distinfo index 5e503b79d42a..3077db00ad1f 100644 --- a/www/serf/distinfo +++ b/www/serf/distinfo @@ -1,2 +1,2 @@ -SHA256 (serf-1.3.5.tar.bz2) = d311ce81a58301f47e652e54551999033880decefae0deea58ba5415776b1fc3 -SIZE (serf-1.3.5.tar.bz2) = 140554 +SHA256 (serf-1.3.6.tar.bz2) = ca637beb0399797d4fc7ffa85e801733cd9c876997fac4a4fd12e9afe86563f2 +SIZE (serf-1.3.6.tar.bz2) = 140671 diff --git a/www/serf/files/patch-outgoing.c b/www/serf/files/patch-outgoing.c deleted file mode 100644 index 1c5da43968c4..000000000000 --- a/www/serf/files/patch-outgoing.c +++ /dev/null @@ -1,47 +0,0 @@ ---- ./outgoing.c.orig 2014-04-21 16:56:02.000000000 +0200 -+++ ./outgoing.c 2014-06-08 18:17:48.000000000 +0200 -@@ -23,6 +23,13 @@ - - #include "serf_private.h" - -+/* Some implementations -like Windows- report some hangup errors via a -+ different event than the specific HUP event. */ -+#define APR_STATUS_IMPLIES_HANGUP(status) \ -+ (APR_STATUS_IS_ECONNRESET(status) || \ -+ APR_STATUS_IS_ECONNABORTED(status) || \ -+ status == SERF_ERROR_REQUEST_LOST) -+ - /* cleanup for sockets */ - static apr_status_t clean_skt(void *data) - { -@@ -922,8 +929,12 @@ - request->handler_baton, - pool); - -- if (SERF_BUCKET_READ_ERROR(status)) { -- /* Report the request as 'died'/'cancelled' to the application */ -+ if (SERF_BUCKET_READ_ERROR(status) -+ && !APR_STATUS_IMPLIES_HANGUP(status)) { -+ -+ /* Report the request as 'died'/'cancelled' to the application, -+ but only if our caller doesn't handle this status specifically, -+ with something like a retry */ - (void)(*request->handler)(request, - NULL, - request->handler_baton, -@@ -1128,10 +1139,12 @@ - - /* Some systems will not generate a HUP poll event so we have to - * handle the ECONNRESET issue and ECONNABORT here. -+ * -+ * ### Update similar code in handle_response() if this condition -+ * changes, or requests will get lost and/or accidentally reported -+ * cancelled. - */ -- if (APR_STATUS_IS_ECONNRESET(status) || -- APR_STATUS_IS_ECONNABORTED(status) || -- status == SERF_ERROR_REQUEST_LOST) { -+ if (APR_STATUS_IMPLIES_HANGUP(status)) { - /* If the connection had ever been good, be optimistic & try again. - * If it has never tried again (incl. a retry), fail. - */ |