суббота, 7 апреля 2012 г.

[life] В реале не смешно

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

В общем, внезапно, байки про выезд барбухайки к белогорячечным пациентам из “Блога добрых психиаторов” перестали быть смешными и забавными.

пятница, 6 апреля 2012 г.

[life.amazing] Небольшое видео о живых, но рукотворных мостах

Сопроводительный текст на английском, но на таком простом и с такой четкой дикцией, что смысл даже я улавливаю:

Начинать что-то такое, чем будешь пользоваться не ты, и даже не твои дети, а дети твоих детей – есть в этом что-то непостижимое уму европейского человека.

четверг, 5 апреля 2012 г.

[life.extreme] Небольшое видео для любителей экстремальных видов спорта

PS. Меня особенно впечатлил коротенький фрагмент с серфером на офигенно большой волне (где-то на 1:18).

вторник, 3 апреля 2012 г.

[life.humour] О происхождении названия автомобильных дворников :)

Снимок сделал в китайском городе с названием Qinhuangdao (транскрипцию на русский я не осилю).

Найдено в очередном выпуске WSJ’s Photos of the Day.

понедельник, 2 апреля 2012 г.

[prog.bugs] Помог диагностировать еще одну проблему в OTL

На прошлой неделе произошел вопиющий случай – начала течь память в новой версии одной из моих C++ных программ. Поскольку таких вещей уже очень давно не было, яростно бросился искать причину.

Оказалось, что виной был баг в OTL, который проявлялся при стечении следующих обстоятельств:

  • использовался механизм пулинга otl_stream-ов (#define OTL_STREAM_POOLING_ON);
  • otl_stream открывался не через передачу аргументов в конструктор, а через вызов метода open().

Если затем для такого otl_stream-а вызова метода close() не было (закрытие посредством деструктора) или же явно вызывался метод close(true) (т.е. с указанием сохранить поток в пуле), то память начинала течь.

Детали найденной проблемы были отосланы Сергею Кучину, разработчику OTL, который уже выпустил версию OTL 4.0.260, в которой данная проблема исправлена.