diff --git a/rtengine/myfile.h b/rtengine/myfile.h index 771dd7b84..e4609c697 100644 --- a/rtengine/myfile.h +++ b/rtengine/myfile.h @@ -68,7 +68,10 @@ inline void fseek (IMFILE* f, int p, int how) } else if (how == SEEK_CUR) { f->pos += p; } else if (how == SEEK_END) { - f->pos = f->size + p; + if(p <= 0 && -p <= f->size) { + f->pos = f->size + p; + } + return; } if (f->pos < 0 || f->pos > f->size) {