Closed fushihara closed 3 years ago
RESERVE_DATA.reserveID プロパティはDWORD型ですが、 https://github.com/xtne6f/EDCB/blob/201bf29aeb3f12000db0537e58eb9ede70aa261d/Common/StructDef.h#L59
CEpgTimerSrvMain::FetchReserveData でWORD型にキャストしています。(LuaHelp::get_intも桁数が足りていない?) https://github.com/xtne6f/EDCB/blob/201bf29aeb3f12000db0537e58eb9ede70aa261d/EpgTimerSrv/EpgTimerSrv/EpgTimerSrvMain.cpp#L4368
録画予約数が65536件を超えた場合、EpgTimerSrvの中でreserveIDの値が変わってしまうのでLuaScriptからChgReserveDataの呼び出しが失敗してしまいます。 (予約を新規作成する時はreserveIDの値は使っていないので成功する)
ありがとうございます。 完全にミスです (たぶん前行のeventID等からの流れで書いちゃったんだと思う)。 LuaHelp::get_intは符号付き32bitなので値域については大丈夫です。
RESERVE_DATA.reserveID プロパティはDWORD型ですが、 https://github.com/xtne6f/EDCB/blob/201bf29aeb3f12000db0537e58eb9ede70aa261d/Common/StructDef.h#L59
CEpgTimerSrvMain::FetchReserveData でWORD型にキャストしています。(LuaHelp::get_intも桁数が足りていない?) https://github.com/xtne6f/EDCB/blob/201bf29aeb3f12000db0537e58eb9ede70aa261d/EpgTimerSrv/EpgTimerSrv/EpgTimerSrvMain.cpp#L4368
録画予約数が65536件を超えた場合、EpgTimerSrvの中でreserveIDの値が変わってしまうのでLuaScriptからChgReserveDataの呼び出しが失敗してしまいます。 (予約を新規作成する時はreserveIDの値は使っていないので成功する)