MCPcopy Index your code
hub / github.com/EmulatorJS/EmulatorJS / isCompressed

Method isCompressed

data/src/compression.js:5–15  ·  view source on GitHub ↗
(data)

Source from the content-addressed store, hash-verified

3 this.EJS = EJS;
4 }
5 isCompressed(data) { //https://www.garykessler.net/library/file_sigs.html
6 //todo. Use hex instead of numbers
7 if ((data[0] === 80 && data[1] === 75) && ((data[2] === 3 && data[3] === 4) || (data[2] === 5 && data[3] === 6) || (data[2] === 7 && data[3] === 8))) {
8 return "zip";
9 } else if (data[0] === 55 && data[1] === 122 && data[2] === 188 && data[3] === 175 && data[4] === 39 && data[5] === 28) {
10 return "7z";
11 } else if ((data[0] === 82 && data[1] === 97 && data[2] === 114 && data[3] === 33 && data[4] === 26 && data[5] === 7) && ((data[6] === 0) || (data[6] === 1 && data[7] == 0))) {
12 return "rar";
13 }
14 return null;
15 }
16 decompress(data, updateMsg, fileCbFunc) {
17 const compressed = this.isCompressed(data.slice(0, 10));
18 if (compressed === null) {

Callers 1

decompressMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected