If it returns FAILURE, the value of retval is undefined, and you mustn 't touch it.
call_user_function() は成功時に SUCCESS、 関数を見つけられなかった場合に FAILURE を返します。 返り値を確認する必要があります! SUCCESS が返された場合、 retval pval 自体(または関数からの返り値として それを返す)を破棄する責任があります。 FAILURE が返された場合、retval の値は未定義であり、参照することは できません。