[[alias>http://localhost/image.png]]の処理は意図したものか?

  • ページ: BugTrack2
  • 投稿者: pai
  • 優先順位: 普通
  • 状態: 却下
  • カテゴリー: 本体バグ
  • 投稿日: 2007-09-09 (日) 02:47:42
  • バージョン:

メッセージ

[[alias>URL]]形式で画像にリンクすると、期待したように表示されない。


症状

[[http://www.example.com/.png>http://www.example.com/]]

→[[http://www.example.com/.png>http://www.example.com/]]

(インライン画像を有効にしないと表示されない)

現状

aliasがURLとして有効で、.png等の拡張子を持つ場合に、

<a href="http&#x3a;//www.example.com/" rel="nofollow">
  <img src="http&#x3a;//www.example.com/.png" alt="http&#x3a;//www.example.com/" />
</a>
  • aliasがsrcになる
  • URLがaltになる
  • URLがhrefになる

期待する動作

nameがURLとして有効で、.png等の拡張子を持つ場合に、

<a href="http&#x3a;//www.example.com/" rel="nofollow">
  <img src="http&#x3a;//www.example.com/" alt="http&#x3a;//www.example.com/.png" />
</a>
  • aliasがaltになる
  • URLがsrcになる
  • URLがhrefになる

パッチ例

--- make_link.php.070907	2007-05-09 17:26:27.000000000 +0900
+++ make_link.php	2007-09-08 03:27:16.000000000 +0900
@@ -186,8 +186,8 @@
 		$this->body = $body;
 		$this->type = $type;
 		if (! PKWK_DISABLE_INLINE_IMAGE_FROM_URI &&
-			is_url($alias) && preg_match('/\.(gif|png|jpe?g)$/i', $alias)) {
-			$alias = '<img src="' . htmlspecialchars($alias) . '" alt="' . $name . '" />';
+			is_url($name) && preg_match('/\.(gif|png|jpe?g)(\?|$)/i', $name)) {
+			$alias = '<img src="' . htmlspecialchars($name) . '" alt="' . $alias . '" />';
 		} else if ($alias != '') {
 			if ($converter === NULL)
 				$converter = new InlineConverter(array('plugin'));

関連項目

  • BugTrack/108 画像にリンクを貼りたい
  • BugTrack2/69 (インライン画像) URLの記述により、閲覧者に Web bug や外部のCGI等を呼び出させる事ができる

コメント

  • いま手元で再現環境がないので、間違いがあるかも知れません。 -- pai 2007-09-09 (日) 03:06:38
  • クリーンな環境をつくって症状の再現を確認しました。 -- pai 2007-09-10 (月) 02:28:40
  • ページのタイトルの部分に書いてある形式([[alias>png file]])と、症状の部分に書いてある形式([[png file>URL]])が違うと思うのですが。
    両方とも 議題にしているのですか?途中からごっちゃになっている気がします。 -- 2007-10-15 (月) 21:27:57
    • [[http://pukiwiki.sourceforge.jp/>http://pukiwiki.sourceforge.jp/image/b_pukiwiki.official.png]] ([[alias>png file]] の形式)
      <a href="http&#x3a;//pukiwiki.sourceforge.jp/image/b_pukiwiki.official.png" rel="nofollow">
      http&#x3a;//pukiwiki.sourceforge.jp/</a>
    • [[http://pukiwiki.sourceforge.jp/image/b_pukiwiki.official.png>http://pukiwiki.sourceforge.jp/]] ([[png file>URL]] の形式)
      <a href="http&#x3a;//pukiwiki.sourceforge.jp/" rel="nofollow">
      <img src="http&#x3a;//pukiwiki.sourceforge.jp/image/b_pukiwiki.official.png" alt="http&#x3a;//pukiwiki.sourceforge.jp/" /></a>
  • それと今のパッチ例だと、[[URL>png file]]を[[png file>URL]]に自動修正するだけでなく、
    URL に画像のリンク先を、alias にそのサムネイル画像を、といった使い方をしている場合に、サイズの大きな画像がページに表示されるようになってしまったり、
    [[png file>URL]] の形式が使えなくなったり、というような副作用がでてしまいそうです。 -- 2007-10-15 (月) 21:27:57
    • 補足: png file が画像ファイルパスを、URL がそれ以外のパスを指す、と言う意味で書いてます。 -- 2007-10-15 (月) 21:27:57
  • すみません、確認します。 -- pai 2007-11-12 (月) 19:52:12
  • スパムにやられていたようなので、バックアップから復旧しました。 -- -? 2008-09-24 (水) 22:55:15


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-10-20 (月) 18:55:17
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.241 sec.

OSDN