]> source.dussan.org Git - gitblit.git/commitdiff
Trap connection resets and broken pipes in zip download servlet
authorJames Moger <james.moger@gitblit.com>
Fri, 29 Mar 2013 20:06:14 +0000 (16:06 -0400)
committerJames Moger <james.moger@gitblit.com>
Fri, 29 Mar 2013 20:06:14 +0000 (16:06 -0400)
src/main/java/com/gitblit/DownloadZipServlet.java

index 0feee8795c1d97b0adf566de68a48ad64dfe7db3..8a4a710d2178e9a0e37b45f2d30add72da8ac6d6 100644 (file)
@@ -16,6 +16,7 @@
 package com.gitblit;\r
 \r
 import java.io.IOException;\r
+import java.net.SocketException;\r
 import java.text.MessageFormat;\r
 import java.text.ParseException;\r
 import java.util.Date;\r
@@ -176,6 +177,13 @@ public class DownloadZipServlet extends HttpServlet {
                                }\r
                                \r
                                response.flushBuffer();\r
+                       } catch (SocketException t) {\r
+                               String message = t.getMessage() == null ? "" : t.getMessage().toLowerCase();\r
+                               if (message.contains("reset") || message.contains("broken pipe")) {\r
+                                       logger.error("Client aborted zip download: " + message);\r
+                               } else {\r
+                                       logger.error("Failed to write attachment to client", t);        \r
+                               }\r
                        } catch (Throwable t) {\r
                                logger.error("Failed to write attachment to client", t);\r
                        }\r