チケット #45001

generate_packets.py: check for errors when sending all fields

登録: 2022-07-04 05:55 最終更新: 2022-07-06 04:01

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
1

詳細

Part of #43927. Follow-up to #45000. Check return values of dio_put_*() for everything that is sent and move common parts out of Field.get_put_real() into Field.get_put() or (where applicable) Variant.get_send().

チケットの履歴 (5 件中 3 件表示)

2022-07-04 05:55 更新者: alienvalkyrie
  • 新しいチケット "generate_packets.py: check for errors when all fields" が作成されました
2022-07-04 06:08 更新者: alienvalkyrie
  • 概要が更新されました
2022-07-04 06:37 更新者: alienvalkyrie
  • 解決法なし から 受領 に更新されました
コメント

Note: This patch puts simplicity of the generation code over simplicity of the generated code, producing clunky-looking code for simple fields, like

  1. e = 0;
  2. e |= DIO_PUT(...);
  3. if (e) {
  4. log_packet_detailed("... field error detected");
  5. }
instead of the simpler
  1. if (DIO_PUT(...)) {
  2. log_packet_detailed("... field error detected");
  3. }
This will be a trend in further patches – the advantage being that the e |= DIO_PUT(...); line can be reused in other places (such as for array elements) in the future, and the surrounding code works equally well for less-simple fields (i.e. arrays).

2022-07-06 04:01 更新者: alienvalkyrie
  • 状況オープン から 完了 に更新されました
  • 解決法受領 から 修正済み に更新されました

添付ファイルリスト

編集

このチケットにコメントを追加するには、ログインが必要です » ログインする