+
+ --for i,v in pairs(my_node) do
+ --print(my_node.id, i, v)
+ --end
+ --print(my_node.predecessor)
+ if my_node.predecessor ~= nil then
+ task.answer = math.tointeger(my_node.predecessor)
+ --print(my_node.predecessor)
+ else
+ -- FIXME: This is completely wrong here. Fix this;
+ -- we need to figure out what to send if we don't know our
+ -- predecessor yet (this DOES happen and this means that task.answer
+ -- is initialised with nil and when task.answer is accessed (not here), it will
+ -- break in Lua 5.3 (because it is nil).
+ simgrid.critical("Don't know my predecessor yet!")
+ my_node.predecessor = remote_get_predecessor(my_node.fingers[1])
+ task.answer = my_node.predecessor
+ end
+
+ --print("It will break now, since task.answer is nil here.")
+ --task.answer = my_node.predecessor
+ --print(task.answer)
+ --print("Before")
+ task:dsend(math.tointeger(task.answer_to))
+ --print("After dsend returned")