]>
Commit | Line | Data |
---|---|---|
5deae3d3 AM |
1 | diff -urN file-4.18.org/src/apprentice.c file-4.18/src/apprentice.c |
2 | --- file-4.18.org/src/apprentice.c 2006-10-31 20:37:17.000000000 +0100 | |
3 | +++ file-4.18/src/apprentice.c 2006-11-25 01:27:51.000000000 +0100 | |
4 | @@ -623,7 +623,7 @@ | |
5 | } | |
6 | ||
7 | /* get offset, then skip over it */ | |
8 | - m->offset = (uint32_t)strtoul(l, &t, 0); | |
9 | + m->dummy4 = m->offset = (uint32_t)strtoul(l, &t, 0); | |
10 | if (l == t) | |
11 | if (ms->flags & MAGIC_CHECK) | |
12 | file_magwarn(ms, "offset `%s' invalid", l); | |
13 | @@ -1487,7 +1487,7 @@ | |
14 | bs1(struct magic *m) | |
15 | { | |
16 | m->cont_level = swap2(m->cont_level); | |
17 | - m->offset = swap4((uint32_t)m->offset); | |
18 | + m->dummy4 = m->offset = swap4((uint32_t)m->offset); | |
19 | m->in_offset = swap4((uint32_t)m->in_offset); | |
20 | if (!IS_STRING(m->type)) | |
21 | m->value.q = swap8(m->value.q); | |
22 | diff -urN file-4.18.org/src/funcs.c file-4.18/src/funcs.c | |
e3e5690a | 23 | --- file-4.18.org/src/funcs.c 2006-10-31 20:37:17.000000000 +0100 |
5deae3d3 | 24 | +++ file-4.18/src/funcs.c 2006-11-25 01:27:51.000000000 +0100 |
e3e5690a AM |
25 | @@ -151,10 +151,16 @@ |
26 | protected int | |
27 | file_reset(struct magic_set *ms) | |
28 | { | |
29 | + struct mlist *ml; | |
30 | if (ms->mlist == NULL) { | |
31 | file_error(ms, 0, "no magic files loaded"); | |
32 | return -1; | |
33 | } | |
34 | + for (ml = ms->mlist->next; ml != ms->mlist; ml = ml->next) { | |
35 | + uint32_t magindex; | |
36 | + for (magindex = 0; magindex < ml->nmagic; magindex++) | |
5deae3d3 | 37 | + ml->magic[magindex].offset = ml->magic[magindex].dummy4; |
e3e5690a AM |
38 | + } |
39 | ms->o.ptr = ms->o.buf; | |
40 | ms->haderr = 0; | |
41 | ms->error = -1; | |
5deae3d3 | 42 |