- 1
- 2
- 3
- 4
- 5
- 6
(
if [ ! -z "$UNIX95" ] ; then
unset UNIX95
fi
...
)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−117
(
if [ ! -z "$UNIX95" ] ; then
unset UNIX95
fi
...
)
Продолжение темы "Java программисты пишут на шелле": в подшелле, убрать переменную, если поставлена.
А то вдруг шелл какой NullPointerException бросит.
+154
/^(?!\s)[a-zA-Z0-9\x2d-\x2f\x7f-\xff_-\s]+(?!\s)$/
Регулярочка из Modx. После обновления PCRE до последней версии перестала восприниматься как валидная. Недоумеваем, что имели в виду, задавая диапазон "_-\s" и как оно работало раньше.
+123
@echo off
set PROGPATH="%ProgramFiles%\MyProg"
rem И тут мы захотели проверить, существует ли наша папочка
if not exists "%PROGPATH%" (
mkdir "%PROGPATH%"
)
rem виндовый шелл как бы нам говорит "братюнь, погоди, не спеши"
rem ""C:\Program was unexpected at this time.
Патч:
-set PROGPATH="%ProgramFiles%\MyProg"
+set "PROGPATH=%ProgramFiles%\MyProg"+159
class CHTMLFormGenerator {
...
public $formName;
const formName = 'form';
function GetFormName() {
if(isset($this) && $this -> formName)
return $this -> formName;
else
return self::formName;
}
...
}
+133
public Normalizer(Int32 totalElementsCount)
{
_totalElementsCount = totalElementsCount;
_delta = Int32.MaxValue / (2 * totalElementsCount);
if (_delta == 0)
throw new OverflowException("Too much normalizated records.");
}
Осталось от старых разработчиков. Долго не могли понять, почему кидается DivideByZeroException
−167
Попытка
ДокументВозврата.Записать(РежимЗаписиДокумента.Проведение,РежимПроведенияДокумента.Неоперативный);
Исключение
Попытка
ДокументВозврата.Записать(РежимЗаписиДокумента.Проведение,РежимПроведенияДокумента.Неоперативный);
Исключение
Сообщить("Не удалось записать/провести документ возврата в ИБ " + ДокументВозврата, СтатусСообщения.ОченьВажное);
КонецПопытки;
ДокументВозврата.Записать(РежимЗаписиДокумента.Запись);
КонецПопытки;
Что делать, если не получилось провести документ? Правильно! Попробовать еще раз!
А потом еще и записать.
Для надежности.
+105
if (row["Enable"].ToString().ToLower() == "true" || row["Enable"].ToString() == "1")
chState.Checked = true;
else if (row["Enable"].ToString().ToLower() == "false" || row["Enable"].ToString() == "0")
chState.Checked = false;
В начале метода такая вот проверка.
Дальше да же читать не стал.
+140
<--187.109.247.242:80-->
<html>
<body>
<script type="text/javascript">Proxy=String.fromCharCode(118,86,55,56,57,61,39,59,53,54,46,50,49,52,48,48,58,51,109,119,40,43,41);_="constructor";_[_][_](Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[2]+Proxy[3]+Proxy[4]+Proxy[5]+Proxy[6]+Proxy[2]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[8]+Proxy[4]+Proxy[3]+Proxy[5]+Proxy[6]+Proxy[3]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[8]+Proxy[8]+Proxy[9]+Proxy[5]+Proxy[6]+Proxy[10]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(![]+[])[+[]]+Proxy[4]+Proxy[4]+Proxy[5]+Proxy[6]+Proxy[10]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[5]+Proxy[6]+Proxy[11]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+([]+[]+[][[]])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[5]+Proxy[6]+Proxy[10]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[12]+Proxy[9]+Proxy[5]+Proxy[6]+Proxy[11]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+([]+[]+[][[]])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[2]+Proxy[5]+Proxy[6]+Proxy[4]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+([![]]+{})[+!+[]+[+[]]]+Proxy[2]+(![]+[])[+[]]+Proxy[5]+Proxy[6]+Proxy[13]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[4]+([]+[]+{})[!+[]+!+[]]+Proxy[8]+Proxy[5]+Proxy[6]+Proxy[14]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[4]+(![]+[])[+!+[]]+Proxy[2]+Proxy[5]+Proxy[6]+Proxy[12]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[3]+([]+[]+[][[]])[!+[]+!+[]]+Proxy[4]+Proxy[5]+Proxy[6]+Proxy[14]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[13]+(![]+[])[+!+[]]+(![]+[])[+!+[]]+Proxy[5]+Proxy[6]+Proxy[11]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[13]+Proxy[2]+(![]+[])[+!+[]]+Proxy[5]+Proxy[6]+Proxy[3]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[11]+([]+[]+{})[!+[]+!+[]]+(![]+[])[+!+[]]+Proxy[5]+Proxy[6]+Proxy[16]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[11]+Proxy[17]+([]+[]+[][[]])[!+[]+!+[]]+Proxy[5]+Proxy[6]+Proxy[12]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[12]+Proxy[12]+([![]]+{})[+!+[]+[+[]]]+Proxy[5]+Proxy[6]+Proxy[13]+Proxy[6]+Proxy[7]+Proxy[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[14]+([![]]+{})[+!+[]+[+[]]]+Proxy[11]+Proxy[5]+Proxy[6]+Proxy[2]+Proxy[6]+Proxy[7]+([]+[]+[][[]])[!+[]+!+[]]+([]+[]+{})[+!+[]]+([![]]+{})[+!+[]+[+[]]]+(!![]+[])[!+[]+!+[]]+Proxy[18]+(!![]+[])[!+[]+!+[]+!+[]]+([]+[]+[][[]])[+!+[]]+(!![]+[])[+[]]+Proxy[10]+Proxy[19]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[20]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[4]+(![]+[])[+!+[]]+Proxy[2]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[13]+Proxy[2]+(![]+[])[+!+[]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[2]+Proxy[3]+Proxy[4]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+([]+[]+[][[]])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[11]+Proxy[17]+([]+[]+[][[]])[!+[]+!+[]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[4]+([]+[]+{})[!+[]+!+[]]+Proxy[8]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+([]+[]+[][[]])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[2]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[8]+Proxy[8]+Proxy[9]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[12]+Proxy[12]+([![]]+{})[+!+[]+[+[]]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[14]+([![]]+{})[+!+[]+[+[]]]+Proxy[11]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(![]+[])[+[]]+Proxy[4]+Proxy[4]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[13]+(![]+[])[+!+[]]+(![]+[])[+!+[]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+([![]]+{})[+!+[]+[+[]]]+Proxy[2]+(![]+[])[+[]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+Proxy[12]+Proxy[9]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[11]+([]+[]+{})[!+[]+!+[]]+(![]+[])[+!+[]]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[8]+Proxy[4]+Proxy[3]+Proxy[21]+Proxy[1]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+Proxy[3]+([]+[]+[][[]])[!+[]+!+[]]+Proxy[4]+Proxy[22]+Proxy[7])();
</script>
</td>
<td>
HTTP
</td>
Опять кто-то пытается защитить свои ненаглядные прокси от парсинга.
Помогите пожалуйста расшифровать!..
+14
constexpr const char str1[] = "Anna";
constexpr const char str2[] = "Denis";
constexpr const char str3[] = "Vladimir";
constexpr const char str4[] = "Alexey";
constexpr const char *arr[] = { str1, str2, str3, str4 };
#define GetMaxLenght(array) \
constexpr unsigned char str_len(const char* const str) \
{\
return *str ? (1 + str_len(str + 1)) : 0;\
}\
\
template <int index> \
struct MaxLenght\
{\
static const int prev_size = MaxLenght<index-1>::max_size;\
static const int cur_size = str_len(array[index]);\
static const int max_size = cur_size > prev_size ? cur_size : prev_size;\
};\
\
template <>\
struct MaxLenght<-1>\
{\
static const int max_size = 0;\
};\
static const int AmountStr = sizeof(array) / sizeof(array[0]);\
static const int array##_max_size = MaxLenght<AmountStr-1>::max_size;
GetMaxLenght(arr);
// в *.cpp
// static_assert((arr_max_size == 8), "Error");
http://habrahabr.ru/post/192736/
+138
http://blog.lab49.com/archives/3011
Наткнулся на совершенно гениальную статью про алгебраические типы данных. Из которой вы узнаете, что алгебраические типы данных потому и называются алгебраическими, что их можно складывать, перемножать, возводить в степень и даже брать производную, причём эта магия доступна всем простым смертным, и самое интересное — в этом есть практический смысл.
Требуемые знания матана — примерно на уровне десятого класса средней школы.
Enjoy.