- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
int AzFl_PSD_Image::ReadIntFromPsdFile(const unsigned char *offset)
{
char i[4];
i[0] = offset[3];
i[1] = offset[2];
i[2] = offset[1];
i[3] = offset[0];
int *r = (int*)i;
return r[0];
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+22
int AzFl_PSD_Image::ReadIntFromPsdFile(const unsigned char *offset)
{
char i[4];
i[0] = offset[3];
i[1] = offset[2];
i[2] = offset[1];
i[3] = offset[0];
int *r = (int*)i;
return r[0];
}
Невиноватый я что програмисты из адоба биты задом на перед в файл пишут :`(
+16
QString QSqlResultPrivate::positionalToNamedBinding()
{
int n = sql.size();
QString result;
result.reserve(n * 5 / 4);
bool inQuote = false;
int count = 0;
for (int i = 0; i < n; ++i) {
QChar ch = sql.at(i);
if (ch == QLatin1Char('?') && !inQuote) {
result += qFieldSerial(count++);
} else {
if (ch == QLatin1Char('\''))
inQuote = !inQuote;
result += ch;
}
}
result.squeeze();
return result;
}
// Пример запроса:
// select * from some where d_t = "2012-11-08 12:00:00"
Словили сегодня вот такой глюк в кутишечке.
База данных отлично понимает строки и даты в двойных кавычках, все это даже работало какое-то время. Но когда попытались исполнить запрос с таймштампом в двойных кавычках (как в строке 25), начала возникать ошибка в духе "непонятные символы в дате". В одинарных же кавычках все работало. После копания в исходниках и гуглёжки выяснилась и причина - QtSql в упор не видит двойных кавычек, и пытается проставить в них именованные параметры (в нашем случае :00, :00)...
Если кому нужен быстрофикс - берем тут: https://bugreports.qt-project.org/browse/QTBUG-27159
−123
Запрос = Новый Запрос;
Запрос.Текст = "какой-то там текст запроса с параметрами <Вариант> и <НеВариант>"
Запрос.УстановитьПараметр("Вариант", ?(Вариант = Истина, Истина, Ложь));
Запрос.УстановитьПараметр("НеВариант", ?(Вариант = Истина, Ложь, Истина));
Упрощается все до ...("Вариант", Вариант) и ...("НеВариант", Не Вариант) (хотя два параметра, зависящие от одной переменной уже не ок)
Теперь по офису на вопрос: "А можно ли упростить?" сразу летит в ответ сакральное "НЕ ВАРИАНТ!!!"
+119
data Fuuu = Fuuu
instance Eq Fuuu
main = print $ if Fuuu == Fuuu then "I dosen't seen this" else "and this"
Вот за что мне нравится сверх надежный высокоуровневый хаскель, так за то, что если забыл переопределить какой-то метод или оператор из класа типов (в нормальных языках это интерфейс или один из базовых класов) стандартной библиотеки языка или неподходящим образом от него отнаследовался, то мы получаем надежное поведение:
http://ideone.com/6faPct
результат: Ошибка выполнения время: 0.01s память: 3580 kB сигнал: -1
ввод: нет
вывод: нет
stderr:
prog: <<loop>>
+126
infixr 6 `then'`
then' True = fst
then' False = snd
if' = id
else' suc fail = (suc, fail)
main = do
print $ if' (1<5) `then'` "true" `else'` "false"
print $ if' False `then'` "true" `else'` "false"
bormand
У ифа особый синтаксис. Как ты его реализуешь?
Challenge accepted:
Сначала был тред
http://govnokod.ru/12068#comment159236
а потом родилось говно:
http://ideone.com/rOKDPP
Реализовал if. За правильными приоритетами операций и ассоциативностью не следил.
+39
// validation
$validationOK=true;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
exit;
}
+142
require_once __DIR__ . '/composer' . '/autoload_real.php';
Symfony 2
+18
#include <iostream>
int main() {
// Инициализируй меня... полностью.
void (*(&(*omg[])())[1]) (void (*)(void (*(*[])())())) = { [] () ->
void (*(&)[1]) (void (*)(void (*(*[])())())) { static void (*f[])
(void (*)(void (*(*[])())())) = { [] (void (*f)(void (*(*[])())())) {
static void (*(*ff[])())() = { [] () -> void (*)() { return [] () {
std::cout << "Test OK" << std::endl; }; } }; f(ff); } }; return f; } };
// Вызывай, вызывай меня... полностью.
omg[0]()[0]([] (void (*(*f[])())()) { f[0]()(); });
return 0;
}
http://ideone.com/gvg1B7
Говнокоду http://govnokod.ru/12066 посвящается.
Инициализация массива указателей на функции, возвращающих ссылку на массив указателей на функции принимающие указатель на функцию, принимающую массив указателей на функции, возвращающих указатель на функцию ничего не принимающую и ничего не возвращающую.
С++ это простой и наглядный язык.
−113
..........
WHERE
a.id_contact = b.id AND b.company_id = d.id AND
RIGHT( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( a.phone, ' ', '' ) , '(', '' ) , ')', '' ) , '-', '' ) , '+', '' ) , 7 )
LIKE '5085532'
LIMIT 1
Кусок запроса, увиденный в списке процессов MySQL
+41
....
<table border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="45%" valign="top">
<?if($arResult["AUTH"]["new_user_registration"]=="Y"):?>
<b><?echo GetMessage("STOF_2REG")?></b>
<?endif;?>
</td>
<td width="10%"> </td>
<td width="45%" valign="top">
<?if($arResult["AUTH"]["new_user_registration"]=="Y"):?>
<b><?echo GetMessage("STOF_2NEW")?></b>
<?endif;?>
</td>
</tr>
<tr>
....
наткнулся в Битриксе, в шаблоне стандартного компонента sale.order.full
Видимо не судьба одной проверкой <?if($arResult["AUTH"]["new_user_registration"]=="Y"):?> исключить всю строку <tr>...</tr>