----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/129267/ -----------------------------------------------------------
(Updated Oct. 28, 2016, 10:01 p.m.) Review request for KDE Software on Mac OS X and KDE Frameworks. Changes ------- Final fixes Repository: kcoreaddons Description ------- Mac OS X doesn't have `posix_fallocate()` but as written in the comments, this function can be emulated (at least for simple use with `offset=0`). This patch introduces such an emulation, based on `mozilla::fallocation()`. There's so little of that function left that it may be overkill to maintain its original copyright statement but I'll leave that to the legalese experts. Diffs (updated) ----- src/lib/caching/kshareddatacache_p.h 9fd0bb1 src/lib/caching/posix_fallocate_mac.h PRE-CREATION Diff: https://git.reviewboard.kde.org/r/129267/diff/ Testing ------- Works as intended on OS X 10.9.5 as far as I can tell; original file contents were not overwritten in my testing. The autotest succeeds (with an additional debug statement left out of the patch): ``` > kf5-kcoreaddons/work/build/autotests/kshareddatacachetest ********* Start testing of KSharedDataCacheTest ********* Config: Using QtTest library 5.6.1, Qt 5.6.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by Clang 6.0 (clang-600.0.57) (Apple)) PASS : KSharedDataCacheTest::initTestCase() QWARN : KSharedDataCacheTest::simpleInsert() void KSharedDataCache::Private::mapSharedMemory() posix_fallocated 5273696 bytes for file "/Users/bertin/.cache/myTestCache.kcache" PASS : KSharedDataCacheTest::simpleInsert() PASS : KSharedDataCacheTest::cleanupTestCase() Totals: 3 passed, 0 failed, 0 skipped, 0 blacklisted ********* Finished testing of KSharedDataCacheTest ********* ``` File Attachments ---------------- a simple commandline test app https://git.reviewboard.kde.org/media/uploaded/files/2016/10/26/e0af195f-b484-4647-b211-cc78b5b0584b__posix_fallocate.c Thanks, René J.V. Bertin