mirror of
https://github.com/ckolivas/lrzip.git
synced 2025-12-06 07:12:00 +01:00
Relative offset is not required in tmp inbuf, it can be safely zeroed.
This commit is contained in:
parent
cb1f630fe0
commit
65a681a254
3
lrzip.c
3
lrzip.c
|
|
@ -387,7 +387,6 @@ static void read_tmpinmagic(rzip_control *control)
|
||||||
magic[i] = (char)tmpchar;
|
magic[i] = (char)tmpchar;
|
||||||
}
|
}
|
||||||
get_magicver05(control, magic);
|
get_magicver05(control, magic);
|
||||||
control->in_relofs = 24;
|
|
||||||
|
|
||||||
if (control->major_version == 0 && control->minor_version > 5) {
|
if (control->major_version == 0 && control->minor_version > 5) {
|
||||||
for (i = 24; i < MAGIC_LEN; i++) {
|
for (i = 24; i < MAGIC_LEN; i++) {
|
||||||
|
|
@ -396,7 +395,6 @@ static void read_tmpinmagic(rzip_control *control)
|
||||||
failure("Reached end of file on STDIN prematurely on v06 magic read\n");
|
failure("Reached end of file on STDIN prematurely on v06 magic read\n");
|
||||||
magic[i] = (char)tmpchar;
|
magic[i] = (char)tmpchar;
|
||||||
}
|
}
|
||||||
control->in_relofs = MAGIC_LEN;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -451,7 +449,6 @@ static void open_tmpinbuf(rzip_control *control)
|
||||||
|
|
||||||
void clear_tmpinbuf(rzip_control *control)
|
void clear_tmpinbuf(rzip_control *control)
|
||||||
{
|
{
|
||||||
control->in_relofs += control->in_len;
|
|
||||||
control->in_len = control->in_ofs = 0;
|
control->in_len = control->in_ofs = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -171,7 +171,6 @@ struct rzip_control {
|
||||||
i64 in_ofs;
|
i64 in_ofs;
|
||||||
i64 in_len;
|
i64 in_len;
|
||||||
i64 in_maxlen;
|
i64 in_maxlen;
|
||||||
i64 in_relofs;
|
|
||||||
FILE *msgout; //stream for output messages
|
FILE *msgout; //stream for output messages
|
||||||
const char *suffix;
|
const char *suffix;
|
||||||
int compression_level;
|
int compression_level;
|
||||||
|
|
|
||||||
2
runzip.c
2
runzip.c
|
|
@ -112,7 +112,7 @@ static i64 seekcur_fdin(struct rzip_control *control)
|
||||||
{
|
{
|
||||||
if (!TMP_INBUF)
|
if (!TMP_INBUF)
|
||||||
return lseek(control->fd_in, 0, SEEK_CUR);
|
return lseek(control->fd_in, 0, SEEK_CUR);
|
||||||
return (control->in_relofs + control->in_ofs);
|
return control->in_ofs;
|
||||||
}
|
}
|
||||||
|
|
||||||
static i64 read_header(rzip_control *control, void *ss, uchar *head)
|
static i64 read_header(rzip_control *control, void *ss, uchar *head)
|
||||||
|
|
|
||||||
5
stream.c
5
stream.c
|
|
@ -699,7 +699,7 @@ static i64 seekto_fdin(rzip_control *control, i64 pos)
|
||||||
{
|
{
|
||||||
if (!TMP_INBUF)
|
if (!TMP_INBUF)
|
||||||
return lseek(control->fd_in, pos, SEEK_SET);
|
return lseek(control->fd_in, pos, SEEK_SET);
|
||||||
control->in_ofs = pos - control->in_relofs;
|
control->in_ofs = pos;
|
||||||
if (unlikely(control->in_ofs > control->in_len || control->in_ofs < 0)) {
|
if (unlikely(control->in_ofs > control->in_len || control->in_ofs < 0)) {
|
||||||
print_err("Tried to seek outside of in_ofs range in seekto_fdin\n");
|
print_err("Tried to seek outside of in_ofs range in seekto_fdin\n");
|
||||||
return -1;
|
return -1;
|
||||||
|
|
@ -843,7 +843,6 @@ static int read_seekto(rzip_control *control, struct stream_info *sinfo, i64 pos
|
||||||
i64 spos = pos + sinfo->initial_pos;
|
i64 spos = pos + sinfo->initial_pos;
|
||||||
|
|
||||||
if (TMP_INBUF) {
|
if (TMP_INBUF) {
|
||||||
spos -= control->in_relofs;
|
|
||||||
if (spos > control->in_len)
|
if (spos > control->in_len)
|
||||||
read_fdin(control, spos - control->in_len);
|
read_fdin(control, spos - control->in_len);
|
||||||
control->in_ofs = spos;
|
control->in_ofs = spos;
|
||||||
|
|
@ -874,7 +873,7 @@ static i64 get_readseek(rzip_control *control, int fd)
|
||||||
i64 ret;
|
i64 ret;
|
||||||
|
|
||||||
if (TMP_INBUF)
|
if (TMP_INBUF)
|
||||||
return control->in_relofs + control->in_ofs;
|
return control->in_ofs;
|
||||||
ret = lseek(fd, 0, SEEK_CUR);
|
ret = lseek(fd, 0, SEEK_CUR);
|
||||||
if (unlikely(ret == -1))
|
if (unlikely(ret == -1))
|
||||||
fatal("Failed to lseek in get_seek\n");
|
fatal("Failed to lseek in get_seek\n");
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue