...
|
...
|
@@ -261,6 +261,7 @@ extern cl_fmap_t *cl_fmap_open_handle(void *handle, size_t offset, size_t len,
|
261
|
261
|
m->pread_cb = pread_cb;
|
262
|
262
|
m->aging = use_aging;
|
263
|
263
|
m->offset = offset;
|
|
264
|
+ m->nested_offset = 0;
|
264
|
265
|
m->len = len;/* m->nested_offset + m->len = m->real_len */
|
265
|
266
|
m->real_len = len;
|
266
|
267
|
m->pages = pages;
|
...
|
...
|
@@ -520,6 +521,7 @@ static void handle_unneed_off(fmap_t *m, size_t at, size_t len) {
|
520
|
520
|
return;
|
521
|
521
|
}
|
522
|
522
|
|
|
523
|
+ at += m->nested_offset;
|
523
|
524
|
if(!CLI_ISCONTAINED(0, m->real_len, at, len)) {
|
524
|
525
|
cli_warnmsg("fmap: attempted oof unneed\n");
|
525
|
526
|
return;
|