Fi1osof 30 июня 2013 0 0
Переносил сейчас сайт с Evo на Revo. Установил DirectResize из официального репозитория. В целом все шуршит. Но на одной странице проявился баг. Картинка не только не ресайзилась, у нее еще и установленные атрибуты width и height слетели, в результате чего на странице картинка стала крупней, чем надо.

Полез ковырять плагин. Нашел там два бага.

1. $height = preg_replace("[^0123456789]","",$array[0]);
Ошибка в регулярном. Забыли слеши по краям прописать.
Из-за этого плагин не мог очистить HTML-атрибут тега картинки, и получить чисто числовое значение высоты.
Кстати, этот баг я не менее полутора лет назад встречал в DirectResize, но его так и не поправили.

2. Картинку как обычно заливал какой-то манагер, и в названии картинки присутствовали пробелы. При вставке картинки TinyMCE благополучно пробелы заменил на коды %20, а вот DirectResize urldecode не выполнил при обработке пути картинки. В результате все и побилось.

Так как официальный пакет обновлялся последний раз 4-го января 2012-го, то рассчитывать на скорейший патч особо не приходится.

Собрал новый пакет с заплатками. Скачать можно на sourceforge.net. Можно устанавливать как обновление текущему пакету, и не бояться, что не встанет потом официальное обновление.

Кстати, кто не читал эту статью, почитайте. Благодаря этому у меня вообще не было головняков с контролем того, какие параметры мне опять обновлять при установке обновленного пакета, или при откате версии.
0 комментариев
Авторизуйтесь или зарегистрируйтесь (можно через соцсети ), чтобы оставлять комментарии.