[Maple-dev: 231] ConfigUtilsクラスのreadConfig

Back to archive index

舛川 竜治 masuk****@nii*****
2006年 11月 22日 (水) 10:30:28 JST


舛川です。
Mapleの3.1から3.2にバージョンアップをしたせいもあるかもしれませんが、
GlobalFilterがうまく動作してないように見受けられましたのでメールしました。
GlobalFilterが指定してようとなかろうと指定アクションにいくまでの設定ファイル内のフィルタが
実行されているようです。
そちらで同じ現象にならない、または既に修正済みのようでしたら
申し訳ございません。

ソースを追ってみますと
readConfigメソッドの
    if($globalFilter === null || $isDeepest) {
             //globalfilterが無い、もしくは最下層
             $this->readSimpleConfig($config);
             return;
     }
でグローバルフィルタでない場合も、最下層の場合にも
同じように設定ファイルを読み込んでいます。
そこでreturnされますので、それ以降の処理は行っていないと思います。

当方での修正方法としては、
213 if($globalFilter === null || $isDeepest) {
      ↓
      if($globalFilter === null && $isDeepest) {
216 if(!isset($globalFilter[$key])) {
   ↓
      if(isset($globalFilter[$key])) {
220行目あたり
      $this->readSimpleConfig($config, array_keys($globalFilter));
      ↓
      if($globalFilter != null) {
          $this->readSimpleConfig($config, array_keys($globalFilter));
      }
となります。 





Maple-dev メーリングリストの案内
Back to archive index