Revision 183

Date:
2012/01/31 13:36:37
Author:
ahitrov
Revision Log:
Правильная обработка нераспознанных файлов
Files:

Legend:

 
Added
 
Removed
 
Modified
  • koi8/core/lib/Contenido/File.pm

     
    212 212 undef $fh_tmp;
    213 213
    214 214 my $image_info = image_info($filename_tmp.'.'.$ext);
    215 if ( ref $image_info && $image_info->{file_ext} ne $ext ) {
    216 rename $filename_tmp.'.'.$ext, $filename_tmp.'.'.$image_info->{file_ext};
    217 $ext = $image_info->{file_ext};
    218 } elsif ( !ref $image_info ) {
    215 if ( !(ref $image_info && $image_info->{width} && $image_info->{height}) || (ref $image_info && $image_info->{error}) ) {
    219 216 unlink $filename_tmp.'.'.$ext;
    220 217 return undef;
    221 218 }
    219 if ( $image_info->{file_ext} ne $ext ) {
    220 rename $filename_tmp.'.'.$ext, $filename_tmp.'.'.$image_info->{file_ext};
    221 $ext = $image_info->{file_ext};
    222 }
    222 223 my $transformed;
    223 224 if ( exists $prop->{transform} && ref $prop->{transform} eq 'ARRAY' && scalar @{$prop->{transform}} == 2 && $prop->{transform}[0] =~ /(crop|resize|shrink)/ ) {
    224 225 my $c_line;

Небольшая справка по веткам

cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.

koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.

utf8 – актуальная ветка, заточенная под UTF-8.

Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.