File tree Expand file tree Collapse file tree 1 file changed +11
-2
lines changed
Expand file tree Collapse file tree 1 file changed +11
-2
lines changed Original file line number Diff line number Diff line change @@ -2,8 +2,17 @@ import { untar } from "@andrewbranch/untar.js";
22import { Directory , File , ConsoleStdout , wasi as wasi_defs } from "@bjorn3/browser_wasi_shim" ;
33
44export async function getLatestZigArchive ( ) {
5- const zigTarResponse = await fetch ( new URL ( "../zig-out/zig.tar.gz" , import . meta. url ) ) ;
6- const entries = untar ( await zigTarResponse . arrayBuffer ( ) ) ;
5+ const response = await fetch ( new URL ( "../zig-out/zig.tar.gz" , import . meta. url ) ) ;
6+ let arrayBuffer = await response . arrayBuffer ( ) ;
7+ const magicNumber = new Uint8Array ( arrayBuffer ) . slice ( 0 , 2 ) ;
8+ if ( magicNumber [ 0 ] == 0x1F && magicNumber [ 1 ] == 0x8B ) { // gzip
9+ const ds = new DecompressionStream ( "gzip" ) ;
10+ const response = new Response ( new Response ( arrayBuffer ) . body ! . pipeThrough ( ds ) ) ;
11+ arrayBuffer = await response . arrayBuffer ( ) ;
12+ } else {
13+ // already decompressed
14+ }
15+ const entries = untar ( arrayBuffer ) ;
716
817 let root : TreeNode = new Map ( ) ;
918
You can’t perform that action at this time.
0 commit comments