From c4f46e97ca6c0f495d7c81d808fbd414deba1457 Mon Sep 17 00:00:00 2001
From: James Dury <purplepolecat@users.sf.net>
Date: Sat, 7 Dec 2013 15:53:08 +0100
Subject: [PATCH] TFTP: let tftp_multi_statemach()'s return codes through

It would otherwise always clobber the return code with new function
calls and it couldn't return timeout etc.

Bug: http://curl.haxx.se/bug/view.cgi?id=1310
---
 lib/tftp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/tftp.c b/lib/tftp.c
index f1ffd2a3ad..04e8fa7983 100644
--- a/lib/tftp.c
+++ b/lib/tftp.c
@@ -1256,7 +1256,7 @@ static CURLcode tftp_doing(struct connectdata *conn, bool *dophase_done)
   if(*dophase_done) {
     DEBUGF(infof(conn->data, "DO phase is complete\n"));
   }
-  else {
+  else if(!result) {
     /* The multi code doesn't have this logic for the DOING state so we
        provide it for TFTP since it may do the entire transfer in this
        state. */
-- 
GitLab