操作
Backport(バックポート) #1223
完了アクセスブロックが意図しないタイミングで解消される
開始日:
2010-06-28
期日:
進捗率:
0%
予定工数:
説明
Overview (現象)¶
PC版のみで確認。
確認したOpenPNEのバージョンは3.5.3。
- (1) メンバーAとBがフレンドになる
- (2) メンバーAがメンバーBをアクセスブロックする
- (3) メンバーAとメンバーBがどちらかの操作によりフレンドを解消する
- (4) メンバーAがメンバーBのページにアクセスする
- (5) メンバーBがメンバーAのページにアクセスできる
(1) と (2) の順序は交換可能。
(2) でアクセスブロックを行ったにもかかわらず、(5) でアクセスされるのは意図しない流れだと思われる。
Causes (原因)¶
フレンドを解消した状態 (3) で、member_relationship テーブルのメンバーAとBの両者に関するレコードが is_friend=0, is_friend_pre=0 となるが、その状態で相手にアクセスするとそのレコードが削除されるようになっているのが原因だと思われる。
そのレコードには is_access_block の情報が含まれており、削除されてしまうことで意図しない (5) のアクセスが可能になってしまっている。
Way to fix (修正内容)¶
具体的な修正箇所はソースコードを追っていないのでここでは示せない。
Shinichi Urabe さんが14年以上前に更新
- ステータス を New(新規) から Invalid(無効) に変更
再現しません
ソースコード上でも member_relationship を削除している箇所がないため、
通常の操作では再現しないと考えられます
Minoru Takai さんが14年以上前に更新
改めて問題の有無を確認しました。
確かに 3.2 ではレコードの削除が行われず、問題が再現しませんでした。
このチケットは Invalid で問題ありません。
操作