Commit Diff


commit - ad5cb26d7ea1326e3b195caa3b459ea287aded90
commit + 8f464e92b2e71ae647c139f4937a2390d159eec2
blob - 8b6ec707be2e7409257caf0c0014f894762f1bb5
blob + 225c2b3594850d1cc45a42f5729a68ea1540829d
--- gotwebd/got_operations.c
+++ gotwebd/got_operations.c
@@ -767,8 +767,10 @@ got_output_repo_tree(struct request *c,
 
 	for (i = 0; i < nentries; i++) {
 		te = got_object_tree_get_entry(tree, i);
-		if (cb(c->tp, te) == -1)
+		if (cb(c->tp, te) == -1) {
+			error = got_error(GOT_ERR_CANCELLED);
 			break;
+		}
 	}
 done:
 	free(escaped_name);
@@ -891,8 +893,10 @@ got_output_blob_by_lines(struct template *tp, struct g
 		if (err || linelen == -1)
 			break;
 		lineno++;
-		if (cb(tp, line, lineno) == -1)
+		if (cb(tp, line, lineno) == -1) {
+			err = got_error(GOT_ERR_CANCELLED);
 			break;
+		}
 	}
 
 	free(line);