On Sat, Jan 10, 2015 at 05:05:21AM +0100, anevilyak@xxxxxxxxx wrote: > hrev48646 adds 1 changeset to branch 'master' > old head: 6e9704175eef7a3adbe28f74bd0712b1b2434310 > new head: f894ab70eae60fd72f26403f8ff50d821705fa10 > overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=f894ab7+%5E6e97041 > > ---------------------------------------------------------------------------- > > f894ab7: BMessage: Fix #11710. > > The refactored version of Unflatten() encapsulated the raw buffer > into a BMemoryIO with a specified size of SIZE_MAX, since the total > size of the messageisn't known up front. On 32-bit this was no problem, > but on x86_64, this would lead to an overflow in BMemoryIO, since it > stores its internal length as a size_t, which on that platform is the same > size as off_t. Consequently, when it would cast its length to off_t to > compare against the requested seek position in ReadAt/WriteAt, this would > overflow to a negative, leading it to reject all requests, which > subsequently caused Unflatten() to fail. Thanks for investigating and finding the issues! Would it be possible to fix this in BMemoryIO instead? -- Adrien.