Category::Plugin

backup.inc.phpで存在しない世代を指定した場合にエラーが出る

  • ページ: BugTrack2
  • 投稿者: 0
  • 優先順位: 低
  • 状態: 提案
  • カテゴリー: 本体バグ
  • 投稿日: 2005-11-26 (土) 19:35:51
  • バージョン:

メッセージ

backup.inc.phpの“age=n”で、存在しない世代を指定するとエラーが発生します。わざわざ存在しない世代を指定しないと発生しませんが報告まで*1

↓応急処置

// backup.inc.php,v 1.23  75行目から
	$backups = get_backup($page);
+	$i = 0;
	if (! empty($backups)) {
		$body .= '  <ul>' . "\n";
		foreach($backups as $age => $val) {
+			++$i;
			$date = format_date($val['time'], TRUE);
			$body .= ($age == $s_age) ?
				'   <li><em>' . $age . ' ' . $date . '</em></li>' . "\n" :
				'   <li><a href="' . $script . '?cmd=backup&amp;action=' .
				$r_action . '&amp;page=' . $r_page . '&amp;age=' . $age .
				'">' . $age . ' ' . $date . '</a></li>' . "\n";
		}
		$body .= '  </ul>' . "\n";
	}
	$body .= ' </li>' . "\n";
	$body .= '</ul>'  . "\n";
+	if ($s_age > $i) {
+		return;
+	}

  • コメントありがとうございます。この手の入力値の扱いについては、プログラムが異常な値をそもそも取り扱わないように根本対策をするのが良さそうです。 -- henoheno 2006-01-09 (月) 18:55:23
    • そうですね。どこぞのサイトのバックアップのページに飛んでエラーが出たので書き込みましたが、根本対策ができればそれが良いですね (^^; -- 0 2006-01-11 (水) 01:02:39
  • 関連: E_ALL や safe_mode などでいじると、まだまだwarningが~ -- 2007-10-13 (土) 15:01:53


*1 閲覧と削除が同時に行なわれるのはレアだと思いますし

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-10-13 (土) 15:01:53
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.179 sec.

OSDN