mythconverg_backup.pl отказывает с ошибкой: не Может использовать 'определенный (@array)'

катастрофические отказы mythconverg_backup.pl с ошибкой "Не могут использовать 'определенный (@array)' (Возможно, необходимо ли просто опустить определенный ()?) в./mythconverg_backup.pl строке 1070".

После новой установки xubuntu 16.4 LTS и успешного восстановления базы данных, я хочу скопировать базу данных снова со следующей командой:

$ ./mythconverg_backup.pl --verbose --directory /home/lukas/mythtv/db_backups

Результатом является следующая ошибка:

Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at ./mythconverg_backup.pl line 1070.

Можно ли дать мне подсказку?

1
задан 30 December 2016 в 14:16

1 ответ

От perldoc (5 версий 24.0)

Использование определенных на агрегатах (хеши и массивы) удерживается от использования. Это раньше сообщало, выделялась ли память для того агрегата когда-либо. Это поведение может исчезнуть в будущих версиях Perl. Необходимо вместо этого использовать простой тест для размера:

if (@an_array) { print "has array elements\n" }

Таким образом для Вас просто идут строка 1070 из mythconverg_backup.pl и удаляют определить функцию оттуда. Например:

if( defined @an_array ) измените его на if( @an_array )

0
ответ дан 8 December 2019 в 07:13

Другие вопросы по тегам:

Похожие вопросы: