酷い、タイマーの時間があってない

local function timer_test(self, handle, time_elapsed)
 local t = socket.gettime() - test__preTime
 test__preTime = socket.gettime()
 print("timer_test", time_elapsed, t)
end

function init(self)
 test__preTime = socket.gettime()
 timer.delay(5, true, timer_test)
end

実行すると
引数time_elapsedには前回からの経過時間として妥当な値が入っているが嘘である
socket.gettime()で実際の経過時間をみるとあっていない

game.projectで30fpsに設定していると
DEBUG:SCRIPT: timer_test 1.0000007152557 0.50099563598633

game.projectで10fpsに設定していると
DEBUG:SCRIPT: timer_test 1.0000005960464 0.1669979095459

これ作った人アホなんじゃないの
糞過ぎるだろ