wok-next diff linux-cloop/stuff/cloop.u @ rev 18828
cloop: deduplicate support
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sun Jan 17 14:10:13 2016 +0100 (2016-01-17) |
parents | 1ef3f82b0095 |
children | 74ce1799eee7 |
line diff
1.1 --- a/linux-cloop/stuff/cloop.u Thu Nov 20 18:30:47 2014 +0100 1.2 +++ b/linux-cloop/stuff/cloop.u Sun Jan 17 14:10:13 2016 +0100 1.3 @@ -1,6 +1,6 @@ 1.4 --- cloop.h 1.5 +++ cloop.h 1.6 -@@ -20,6 +20,75 @@ 1.7 +@@ -20,6 +20,80 @@ 1.8 /* data_index (num_blocks 64bit pointers, network order)... */ 1.9 /* compressed data (gzip block compressed format)... */ 1.10 1.11 @@ -67,7 +67,12 @@ 1.12 + offsets[i].size = ntohl(ofs32[i]); 1.13 + for (i = 0, j = sizeof(struct cloop_head); i < n; i++) { 1.14 + offsets[i].offset = j; 1.15 -+ j += offsets[i].size; 1.16 ++ if (offsets[i].size & 0x80000000) { 1.17 ++ unsigned long k = offset[i].size & 0x7FFFFFFF; 1.18 ++ offsets[i].offset = offsets[k].offset; 1.19 ++ offsets[i].size = offsets[k].size; 1.20 ++ } 1.21 ++ else j += offsets[i].size; 1.22 + } 1.23 + return (char *) "32BE v3.0"; 1.24 + }