Skip to content

Commit 6962cfb

Browse files
authored
Merge pull request #973 from lightpanda-io/no-body-response
Handle response without body
2 parents 302c50a + e2d47e1 commit 6962cfb

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

src/browser/page.zig

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -695,6 +695,17 @@ pub const Page = struct {
695695
self.clearTransferArena();
696696

697697
switch (self.mode) {
698+
.pre => {
699+
// Received a response without a body like: https://httpbin.io/status/200
700+
// We assume we have received an OK status (checked in Client.headerCallback)
701+
// so we load a blank document to navigate away from any prior page.
702+
self.mode = .{ .parsed = {} };
703+
704+
const html_doc = try parser.documentHTMLParseFromStr("");
705+
try self.setDocument(html_doc);
706+
707+
self.documentIsComplete();
708+
},
698709
.raw => |buf| {
699710
self.mode = .{ .raw_done = buf.items };
700711
self.documentIsComplete();
@@ -756,10 +767,6 @@ pub const Page = struct {
756767
self.documentIsComplete();
757768
}
758769
},
759-
.pre => {
760-
// we didn't get any data.
761-
self.documentIsComplete();
762-
},
763770
else => {
764771
log.err(.app, "unreachable mode", .{ .mode = self.mode });
765772
unreachable;

0 commit comments

Comments
 (0)