no_proxy が効いていない

  • ページ: BugTrack
  • 投稿者: takano?
  • 優先順位: 普通
  • 状態: 完了
  • カテゴリー: 本体バグ
  • 投稿日: 2004-08-27 (金) 15:22:04
  • バージョン:

メッセージ

proxy.php においてproxyを使わないホスト、アドレスを指定できますが、 効いていないように感じました。 showrssを使用して、イントラネットとインターネットのRSSを取得しようとした時に イントラネットのRSSが取得できませんでした。

調べてみるとproxy.php内のhttp_request()のline30

$via_proxy = $use_proxy and via_proxy($arr['host']);

が and だと意図した動作をしていないようです。

$via_proxy = $use_proxy && via_proxy($arr['host']);

が正解のように思います。

and よりも = の方が演算の結合順位が高いようなので誤動作していると思われます。 以下のスクリプトで検証できます。

<?php   
$chk = TRUE and FALSE;
print 'TRUE and FALSE is ';
print ($chk ? 'TRUE<br>' : 'FALSE<br>');

$chk = (TRUE and FALSE);
print '(TRUE and FALSE) is ';
print ($chk ? 'TRUE<br>' : 'FALSE<br>');

$chk = TRUE && FALSE;
print 'TRUE && FALSE is ';
print ($chk ? 'TRUE<br>' : 'FALSE<br>');
?>

  • BugTrack/635で修正されています。ここで$use_proxyの判定をする必要は無い、ということのようです。 -- 2004-08-27 (金) 20:59:29
  • そっすか。がっくし。 -- takano? 2004-08-27 (金) 22:40:53
  • 余談ですが、ご指摘の通り「and」「or」演算子は順位が低いので、私はこれらをbool演算に用いている部分を見かけたら、その場で(「&&」「||」になるように)叩き潰していますですハイ -- henoheno 2004-08-28 (土) 00:29:14

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2004-08-28 (土) 00:29:15
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.161 sec.

OSDN