lseek negative offset fix