操作
Backport(バックポート) #1222
完了アクセスブロックが意図しないタイミングで解消される
ステータス:
Invalid(無効)
優先度:
Normal(通常)
担当者:
-
対象バージョン:
-
開始日:
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 (修正内容)¶
具体的な修正箇所はソースコードを追っていないのでここでは示せない。
Minoru Takai さんが14年以上前に更新
- ステータス を New(新規) から Invalid(無効) に変更
この問題は 3.6 以上でのみ生じる問題のようです。
3.4.x ではレコードの削除が生じないことを確認したので Invalid でクローズします。
操作