- 1
 - 2
 - 3
 - 4
 - 5
 
delete
    from liaison
where
    type = 'UsersGroup' and
    `group` = 'static_' || (select id from usergroup where name = :grp)
                                    Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Всего: 168
−165
delete
    from liaison
where
    type = 'UsersGroup' and
    `group` = 'static_' || (select id from usergroup where name = :grp)
                                    
            Час назад вынес этим запросом все связи между группами и юзерами в боевой базе ;)
P.S. Почему в mysql все дерьмо, работающее совсем не так, как оно работает почти во всех остальных СУБД, включено по умолчанию?
        
+31
for (int i = 1; i++; i <= 20) {
    if (ExecSQL(...) >= 0) {
        Ok_rekord=true;
        break;
    }
    if (i == 20) {
        if (ExecSQL(...) < 0) {
            // показываем сообщение об ошибке
        } else {
            Ok_rekord=true;
        }
    }
}
                                    Вот такой вот цикл для повтора при дедлоке...
+12
#include <iostream>
namespace dynamic {
template <class T> class scope;
template <class T> class variable {
public:
    variable() : initial(0), current(&initial) {}
    variable(const T &val) : initial(val, 0), current(&initial) {}
    operator T() { return current->val; }
    const T & operator = (const T & new_val) {
        return current->val = new_val;
    }
private:
    struct node {
        node(node *prev) : val(), prev(prev) {}
        node(const T &val, node *prev) : val(val), prev(prev) {}
        T val;
        node *prev;
    };
    node initial;
    node *current;
    friend class scope<T>;
};
template <class T> class scope {
public:
    scope(variable<T> &var) : var(var), node(var.current) {
        var.current = &node;
    }
    scope(variable<T> &var, const T &val) : var(var), node(val, var.current) {
        var.current = &node;
    }
    ~scope() {
        var.current = node.prev;
    }
private:
    variable<T> &var;
    typename variable<T>::node node;
};
}
dynamic::variable<int> x(100500);
void foo() {
    std::cout << x << std::endl;
}
void bar() {
    dynamic::scope<int> x_(x, 42);
    foo();
    x = 265;
    foo();
}
int main() {
    foo();
    bar();
    foo();
    return 0;
}
                                    
            Навеяно http://govnokod.ru/12993.
https://ideone.com/7AA33Q
        
+12
namespace predicate {
using ...;
typedef boost::function<bool (const object &obj)> bool_func;
typedef boost::function<int (const object &obj)> int_func;
// ... скучные реализации операторов ...
template <class I, class S> struct predicate_grammar :
    qi::grammar<I, bool_func(), S>
{
    predicate_grammar() : predicate_grammar::base_type(bool_expr)
    {
        identifier = char_("a-z") >> *(char_("a-z_0-9"));
        bool_prop = identifier [ _val = bind(&make_bool_prop_reader, _1, _pass) ];
        bool_expr = (bool_expr2 >> "||" >> bool_expr) [ _val = bind(&make_logic_op, &op_or, _1, _2) ]
                  | bool_expr2 [ _val = _1 ];
        bool_expr2 = (bool_expr3 >> "&&" >> bool_expr2) [ _val = bind(&make_logic_op, &op_and, _1, _2) ]
                   | bool_expr3 [ _val = _1 ];
        bool_expr3 = ('(' >> bool_expr >> ')') [ _val = _1 ]
                   | ('!' >> bool_expr3) [ _val = bind(&make_not, _1) ]
                   | int_comp [ _val = _1 ]
                   | bool_prop [ _val = _1];
        int_comp = (int_expr >> "<" >> int_expr) [ _val = bind(&make_cmp_op, &op_less, _1, _2) ]
                 | (int_expr >> "<=" >> int_expr) [ _val = bind(&make_cmp_op, &op_less_eq, _1, _2) ]
                 | (int_expr >> ">" >> int_expr) [ _val = bind(&make_cmp_op, &op_greater, _1, _2) ]
                 | (int_expr >> ">=" >> int_expr) [ _val = bind(&make_cmp_op, &op_greater_eq, _1, _2) ]
                 | (int_expr >> "==" >> int_expr) [ _val = bind(&make_cmp_op, &op_eq, _1, _2) ]
                 | (int_expr >> "!=" >> int_expr) [ _val = bind(&make_cmp_op, &op_not_eq, _1, _2) ];
        int_expr = int_prop [ _val = _1 ]
                 | int_const [ _val = bind(&make_int_const, _1) ];
        int_const = int_ [ _val = _1 ];
        int_prop = identifier [ _val = bind(&make_int_prop_reader, _1, _pass) ];
    }
    qi::rule<I, std::string(), S> identifier;
    qi::rule<I, int(), S> int_const;
    qi::rule<I, int_func(), S> int_expr, int_prop;
    qi::rule<I, bool_func(), S> bool_expr, bool_expr2, bool_expr3, int_comp, bool_prop;
};
boost::function<bool (const object &)> parse(const std::string &src) {
    if (src.empty())
        return make_bool_const(true);
    bool_func p;
    std::string::const_iterator b = src.begin(), e = src.end();
    predicate_grammar<std::string::const_iterator, boost::spirit::ascii::space_type> grammar;
    if (!phrase_parse(b, e, grammar, boost::spirit::ascii::space, p) || b != e) {
        std::stringstream s;
        s << "Predicate parsing failed at " << (b - src.begin()) << " in \"" << src << "\"";
        throw std::runtime_error(s.str());
    }
    return p;
}
                                    Обещанный в http://govnokod.ru/12936#comment175980 говнокодец с использованием бусто-духа.
+136
uint16_t min_id, next_id, id;
if (id - min_id < next_id - min_id) {
    // ...
}
                                    
            Сегодня обнаружил в своем, не покрытом тестами, говнокоде этот эпик-фейл.
Окрестосишкоблядился, что называется, по полной программе.
Условие должно было проверять, лежит ли id в диапазоне [min_id; next_id) с учетом перехода через 0.
Например min_id = 0xFFFE, next_id = 0x0003, id = 0x0002 должно вернуть true, а min_id = 43, next_id = 44, id = 42 - false.
        
+140
static inline uint64_t parse_hex_uint64(const char *s) {
    const uint64_t m1 = 0x4040404040404040ll;
    const uint64_t m2 = 0x000F000F000F000Fll;
    const uint64_t m3 = 0x0F000F000F000F00ll;
    const uint64_t *p = (const uint64_t*)s;
    int64_t a = p[0], b = p[1];
    a += ((a & m1) >> 6) * 9;
    b += ((b & m1) >> 6) * 9;
    a = (a & m2) << 12 | (a & m3);
    b = (b & m2) << 12 | (b & m3);
    a |= a >> 24;
    b = b >> 8 | b << 16;
    return (a & 0x0000FFFF00000000ll) | (a & 0xFFFF) << 48 | b >> 48 | (b & 0xFFFF0000);
}
                                    
            По мотивам http://govnokod.ru/12800#comment173346.
Байтоёбский парсинг шестнадцатеричного числа. Версия для 64 битного проца.
https://ideone.com/IFG0fH
        
+13
class session {
public:
    session(int id, boost::asio::io_service &io_service) :
        id(id),
        timer(io_service)
    {
        timer.expires_from_now(session_timeout);
        timer.async_wait(boost::bind(&session::on_timeout, this, _1));
    }
    void on_timeout(const boost::system::error_code &error) {
        if (error)
            return;
        std::cout << "Session timed out " << id << std::endl;
    }
private:
    int id;
    boost::asio::deadline_timer timer;
};
std::map<boost::asio::ip::udp::endpoint, boost::shared_pointer<session> > sessions;
                                    sessions.erase(endpoint) приводит к небольшому насилию над трупом сессии... Ничего конечно не вылетает, и никогда не сломается, но совесть мучает, неприятно пользоваться UB'ом.
−105
def f(x):
    return x.strip()
lines = map(f, open("1.txt", "r"))
open("1.txt", "w").write(" ".join(lines))
                                    
            ХАСКЕЛЕПРОБЛЕМЫ™. Теперь и в питоне.
Исходный файл содержит 3 строчки:
just
as
plannedПитон 2.7:$ python2.7 1.py
$ cat 1.txt
just as planned Питон 3.0:$ python3.2 1.py
$ cat 1.txt
        
        
        
        +102
if (sscanf(buf, "%d-%d-%d %d:%d:%d %d.%d.%d.%d %s %d.%d.%d.%d %llu %llu %llu %llu %d %d %d",
           &r->year,&r->month,&r->day,&r->hour,&t5,&t6,&s1,&s2,&s3,&s4,&r->iface,&d1,&d2,&d3,&d4,
           &r->packets_out,&r->bytes_out,&r->packets_in,&r->bytes_in,&r->proto,&r->sport,&r->dport)<22) {
    printf("Syntax error at line %u\n", t->count + 1);
    /* ... some cleanup ...*/
    return 0;
}
                                    Вот так я читал строку из текстового файла в моем первом боевом проекте.
+72
public class Test {
    public static final int a;
    static {
        System.out.println(Main.a);
        a = 42;
        System.out.println(Main.a);
    }
}
                                    
            javac такой javac...
Так видит проблему: http://ideone.com/jhPN5X
А вот так - нет: http://ideone.com/qAMIvH