2022/06/11(土)FreeBSD 13.1R + Perl 5.36.0 の環境で adiaryの更新時エラー

暫定的な場当たり対処なので、とりあえず記事の形で・・・。

提起の通り、FreeBSD 13.1R 上で Perl 5.36.0 の環境で、adiary 3.40c を稼働させて、
おもむろに記事作成や更新を行うと、
[AutoLoader] Can't modify undef operator in scalar assignment at lib/SatsukiApp/adiary_4.pm line 925, near "undef
}"
Compilation failed in require at lib/Satsuki/AutoLoader.pm line 42.
といったエラーが出るようになりました。FreeBSD 13.0R + Perl 5.32 の環境までは発生しない。
OSもPerlも同時に更新したため、
Perl のバージョンアップで挙動が変わったのか、OSで何かあるのかが判らない状態です。

但し、更新そのものは出来ている模様。

これは、lib/SatsukiApp/adiary_4.pm の 913行目~
sub void_plugin_images {
        my $self = shift;
        my $h    = shift;
        my $form = shift;
        foreach(keys(%$form)) {
                if ($_ !~ /^(\w+)_void$/) { next; }
                if (! $form->{$_}) { next; }
                my $n = $1;
                $h->{$n} = undef
                $h->{"${n}_w"} = undef
                $h->{"${n}_h"} = undef
        }
}
と、なっているところを
sub void_plugin_images {
        my $self = shift;
        my $h    = shift;
        my $form = shift;
        foreach(keys(%$form)) {
                if ($_ !~ /^(\w+)_void$/) { next; }
                if (! $form->{$_}) { next; }
                my $n = $1;
                $h->{$n} = undef ;
                $h->{"${n}_w"} = undef ;
                $h->{"${n}_h"} = undef ;
        }
}
とすると、回避出来ました。これが正しいのかどうかは判りません。