img.inc.php:PHPDocが実装と違う記述になっている

メッセージ

VSCodeで赤波線表示になっていたので報告です。

img.inc.php の function plugin_img_get_props のPHPDocが @return array となっていますが、実際にはobjectを返しています。 (バグではないです)

/**
 * @param[in] $args func_get_args() of xxx_inline() and xxx_convert()
 * @return array(url, is_url, file_path, page, style, a_begin, a_end)
 */
function plugin_img_get_props($args)
{
	//  :
	// (省略)
	//  :
	return (object)array('url' => $url, 'is_url' => $is_url,
		'file_path' => $file_path, 'is_file' => $is_file,
		'style' => $style,
		'a_begin' => $a_begin, 'a_end' => $a_end,);
}

以下のように @return object とするとエラーの山はなくなりました。

/**
 * @param[in] $args func_get_args() of xxx_inline() and xxx_convert()
 * @return object(url, is_url, file_path, page, style, a_begin, a_end)
 */

次回のアップデート時にでも修正いただけると助かります。

追記(22/10/26)

今気づいたのですが。

以下のように img.inc.php の function plugin_img_convert 中でナゾの変数 $a へのアクセスがあります。
たぶん $p の間違いなんじゃないかと思われます。

こっちはたぶんバグです。
(エラーの山に隠れてて気づきませんでした)

function plugin_img_convert()
{
	$args = func_get_args();
	$p = plugin_img_get_props($args);
	// Check the 2nd argument first, for compatibility
	$arg = isset($args[1]) ? strtoupper($args[1]) : '';
	if ($a->file_path === '' && $arg == 'CLEAR') {
		// Stop word-wrapping only (Ugly but compatible)
		// Short usage: #img(,clear)
		return PLUGIN_IMG_CLEAR;
	}
	//  :
	// (省略)
	//  :
}



トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-11-23 (水) 23:22:41
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.244 sec.

OSDN