サンプル掲示板 2017年02月過去ログ
 投稿者:  投稿日:2017年02月02日(木)23時00分04秒

あけおめ(;´Д`)


 投稿者:まなべ  投稿日:2017年02月09日(木)01時46分30秒

Perl5から$[の使用が非推奨になったとのことなので
bbs.cgi 650行目付近のjpgサイズ取得ルーチン

	if($type eq 'jpg'){
		$[=1; # \xff\xc*が見つからなかった場合のindex()の戻り値を0にするため$[に1をセット
		if($data=~/ImplantArchive/){ # JDAの場合
			$pos=index($data,"\xff\xc0");
		}
		else{
			$pos=rindex($data,"\xff\xc2")||rindex($data,"\xff\xc0");
		}
		if(!$pos){unlink("$tmpdir/$id.tmp");&error(9);}
		@data=split(//,substr($data,$pos+5,4));
		$[=0; # 忘れずに元に戻す

		foreach(@data){$_=ord;};
		$w=256*$data[2]+$data[3];
		$h=256*$data[0]+$data[1];
	}

↓変更後

	if($type eq 'jpg'){
		if($data=~/ImplantArchive/){ # JDAの場合
			$pos=index($data,"\xff\xc0");
		}
		elsif($data=~/\xff\xc2/){
			$pos=rindex($data,"\xff\xc2");
		}
		else{
			$pos=rindex($data,"\xff\xc0")
		}
		if($pos==-1){unlink("$tmpdir/$id.tmp");&error(9);}
		@data=split(//,substr($data,$pos+5,4));

		foreach(@data){$_=ord;};
		$w=256*$data[2]+$data[3];
		$h=256*$data[0]+$data[1];
	}

以上のように変更したbbs.cgi(3.08j相当)をアプしました
http://www20.atpages.jp/taiyaki/nana/data/na1486571399.zip