BugTraq.Ru
Русский BugTraq
https://bugtraq.ru/lj/?page=154

25.07.05 00:49
25.07.05 00:49 // оригинал
Иногда очень полезно работать на ноутбуке. После рабочей машины комплекс так тормозил на отрисовке полной лентрансгазовской схемы, что потратил несколько дней (ну или часов по вечерам :)), и таки нашел жутчайшее узкое место. Как обычно и бывает, невинная рюшка, пересечение труб/перемычек - несколько лет назад поиск этих пересечений был воткнут непосредственно в отрисовку. Дальше как обычно, работает и ладно, этот кусок кода давно забыт, на тестовых схемах летает, на моей рабочей машине полная схема подтормаживает, но терпимо (ну как же, 17 тыщ объектов, все с толпой свойств и взаимосвязей), а вот на машинках послабее простенькая подготовка буферной картинки в паузах между протаскиванием идет аж секунд пять (и это в релизе), ну и вся прочая работа тормозит (ну еще бы, на каждый чих все перемычки, попавшие на экран, должны пробежаться по всем объектам, причем для полного счастья используя старый алгоритм, перебирающий все объекты, не глядя на принадлежность цехам и т.п.).
Пришлось, понятное дело, воткнуть определение координат пересечений в редактирование, отъесть еще малость памяти на их хранение, а заодно малость помучаться, отслеживая все ситуации, в которых труба должна свистеть соседкам о пересчете (а главное, определять этих соседок без полного перебора). Зато теперь эта отрисовка летает даже в дебаг-версии, отпуск прошел не зря :)

обсудить  |  все отзывы (0)  |  обсудить в LJ


18.07.05 20:50
18.07.05 20:50 // оригинал

Нуте-с, кто ставит на Снейпа-Штирлица?

обсудить  |  все отзывы (0)  |  обсудить в LJ


11.07.05 19:07
11.07.05 19:07 // оригинал
То ли за последний год у Бата покривел диспетчер писем на сервере, то ли на хостере перемудрили с настройками, в результате чего я просто не успеваю с утреца добраться до конца списка из пары сотен писем, чтобы пометить, кого забирать, и диспетчер вываливается со словами про последнюю пролетевшую команду NOOP. Пришлось вынуть из закромов старый добрый magic mail monitor, а заодно прибить все старые адреса типа ads@bugtraq.ru и publishing@bugtraq.ru, на которые валится куча спама. Любопытно, что на advert@bugtraq.ru и republishing@bugtraq.ru опять пополз тонкий поток спама. С первым я еще могу понять, а вот со вторым даже удивительно, и слово вроде не сильно популярное, и на вебе провисел всего несколько часов.

обсудить  |  все отзывы (0)  |  обсудить в LJ


08.07.05 20:05
08.07.05 20:05 // оригинал
GPS BC-307 оказался вполне приятной игрушкой. Дома с Pocket GPS Pro вообще точность получалась в пару метров, тут такое счастье, конечно. недоступно, но Ozi Explorer с предусмотрительно нарытыми картами Тверской области и Волочка тоже показывает вполне приличные результаты.

обсудить  |  все отзывы (0)  |  обсудить в LJ


отпускное
08.07.05 16:25 // оригинал
Перед самым отъездом в Волочек накрылась кнопка в брелке сигнализации. Вскрытие показало частчино накрывшийся микрик - при нажатии он перестал фиксироваться с характерным щелчком, хотя кое-как срабатывал. Запасной брелок куда-то испарился несколько месяцев назад, времени на поиск уже не было (и так каждый год выезжаем все позже), решил, что пока обойдусь так, а после возвращения что-нибудь придумаю.
Ехали с четырех до девяти, час по Москве, сильно тормозили в Солнечногорске и Клину, в результате на первую четверть пути ушло три часа, ну а оставшийся кусок от Клина доехали уже за два. После Твери как обычно до фига фур и отвратительное поочередное движение по двум полосам, но в целом прорывались неплохо, особенно отрываясь на свежих участках без разметки.
Всякие обеды/ужины, естественно, пропустили, рассчитывая на шашлык, который везли с собой. Пока нашли ключи, распаковались и уложили ребенку, уже стемнело. Искали дрова и готовили уже при свете фонарика, собсно поедание случилось часа в два ночи.
Работает теперь gprs и у Билайна и у МТС, хотя Билайн по ощущениям чуть похуже. Теоретически можно слегка сэкономить, днем работая через Билайн, ночью через МТС, но лениво все время перекидывать сим-карту, так что скорее всего после съедания большей части денег на билайновском счету он останется как резерв.
Брелок стал вести себя все хуже, срабатывая в кармане (кнопка слегка прижалась и привет), причем, что самое противное, иногда надолго, что, во-первых, грозило быстро убить батарейку, во-вторых, скидывало сигнализацию в режим тревоги, если машина при этом оказывалась поблизости. Очередной раз открыл и обругал себя за то, что перед отъездом, думая, где взять микрик на замену, смотрел и не видел микрики от двух других кнопок, одна из которых вообще никогда не используется, а вторая только для тихого снятия сигналки. Ну а паяльник я на отдых как-то не привык еще брать. Днем, возможно, на это и плюнул бы, но в три часа ночи идея вскрыть микрик показалась вполне разумной, что и было проделано. Как и ожидалось, замыкающая контакт пластинка сломалась и перестала пружинить. Переставил из "резервного" и все даже заработало, так что день окончился на удовлетворительной ноте.

обсудить  |  все отзывы (0)  |  обсудить в LJ


19.06.05 22:06
19.06.05 22:06 // оригинал
А клевая гонка сегодня. Вот что нужно было, чтобы в этом году наконец-то Шуми приехал первым.

обсудить  |  все отзывы (0)  |  обсудить в LJ


14.06.05 21:49
14.06.05 21:49 // оригинал
При переходе на последний Stingray огреб пока не слишком понятный чудный глюк. За всю свою программистскую жизнь я видел их много, но на такое еще не напарывался. Интересно, сколько бы я его отлавливал лет так десять назад. Сейчас же тупиковые варианты отсеялись довольно быстро - и то большая часть времени ушла на продирание глаз, которым не хотелось верить.

Библиотечная функция вызывает мою виртуальную функцию, передавая ей указатель на некоторую здоровую структуру. Чуть попозже моя функция передает элемент этой структуры библиотечной функции, которая при этом успешно наворачивается. Просматривание Call stack приводит к неожиданному результату:
//bugtraq.ru/files/gluk.gif
А именно, при переходе от моей функции к библиотечной четко видно, как запарывается кусок структуры - при том, что указатель один и тот же, и он всего лишь передан из одной функции в другую. Будь память выделена на стеке, было бы более-менее понятно, куда копать, тут же какие-то полные чудеса - в зависимости от того, откуда смотрим на кусок памяти, он выглядит по-разному. Все, конечно, усугубляется тем, что и библиотека в dll, и моя функция в dll, но предыдущей версии библиотеки это особо не мешало.
Максимум, что пока приходит в голову, - что при сборке библиотеки и моего кода каким-то чудом вылезли какие-то одноименные подструктуры разного размера, что и сдвинуло все данные, но пока ничего похожего не нашел.

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

Update 2: ну так и есть, два основных модуля системы начали делаться в такие лохматые времена, что в хедерах не было даже слов про _WIN32_WINNT (работает себе и работает, на фига трогать), которое уже давно при генерировании новых проектов устанавливается в 0х400 (как и в Stingray). А при его отсутствии срабатывает следующий чудный кусок кода из стандартных хедеров:
#ifndef _WIN32_WINNT
#ifdef WINVER
#define _WIN32_WINNT WINVER
#else
#pragma message("_WIN32_WINNT not defined. Defaulting to 0x0501 (Windows XP and Windows .NET Server)")
#define _WIN32_WINNT 0x0501
#endif

tagLVITEMA же определена так:

typedef struct tagLVITEMA
{
UINT mask;
int iItem;
int iSubItem;
UINT state;
UINT stateMask;
LPSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
#if (_WIN32_IE >= 0x0300)
int iIndent;
#endif
#if (_WIN32_WINNT >= 0x501)
int iGroupId;
UINT cColumns; // tile view columns
PUINT puColumns;
#endif

} LVITEMA, *LPLVITEMA;

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

обсудить  |  все отзывы (0)  |  обсудить в LJ


03.06.05 20:36
03.06.05 20:36 // оригинал
Родной софт от Моторолы крив до безобразия. Во-первых, при синхронизации с аутлуком упорно воспринимает первое слово как имя, второе как фамилию, и фиг что поменяешь, копание в аутлуковских настройках не помогло - при том, что большинство номеров обычно вбивается ровно наоборот, адресная книга начинает выглядеть несколько забавно. Во-вторых, прописывание нескольких номеров на одно имя сделано через это самое место - когда телефон встречает несколько контактов с одним именем, он понимает, что все они относятся к одному человеку и в зависимости от настроек просмотра может их "склеить". Но при редактировании родным софтом это все будут разные записи. Обычный вбитый телефон без всяких признаков, мобильный он или домашний (а при копировании с сим-карты они все именно такие), при копировании в аутлук вообще игнорируется (или записывается в такое глухое поле, что я его не нашел). Ну это ладно, к этому можно привыкнуть. Наконец, при сохранении отредактированных записей в телефон он самым наглым образом режет длинные имена, что делает использование этого чуда просто неприемлемым. Надо будет попробовать MobilEdit, может он поумнее. Собсно говоря, и у нокии родной софт не бог весть что и не валяется рядом ни с Oxygen'ом, ни с PhoneManager'ом, но по крайней мере он делает все то, что от него ожидают.

обсудить  |  все отзывы (0)  |  обсудить в LJ


02.06.05 12:10
02.06.05 12:10 // оригинал
ЗВIII при всей слабости диалогов (особенно в переводе) и беспомощной игре всех неанимированных персонажей (перерождение в ситха при более-менее убедительной мотивации сыграно настолько же неубедительно, как и обратное перерождение в шестой части, да и остальные места не лучше - "ты неправ" - "нет, ты неправ"), оставляет, тем не менее, самое сильное впечатление из всей серии - по крайней мере, это самая удачная попытка воткнуть туда хоть какой-то психологизьм. Классическая тема борьбы с предсказанием, гарантировавшей его исполнение, получилась вполне неплохо, и концы с концами сведены хорошо, даже мимоходом объяснены последующие загробные явления Оби Вана. Кстати, джедайская чистка сильно напомнила "Крестного отца".

обсудить  |  все отзывы (0)  |  обсудить в LJ


02.06.05 02:36
02.06.05 02:36 // оригинал

Чем меня добила моторола, так это упаковкой.



После плотно набитых картонок от нокии эта здоровущая алюминиевая коробка с таким маленьким телефоном внутри несколько ошарашила. Ну и саму цацку впору отбирать у жены, так понравилась :) Приятная мелочь - для зарядки, hands free и связи с компьютером очень грамотно использован стандартный usb-разъем.

обсудить  |  все отзывы (0)  |  обсудить в LJ




««    «   151  |  152  |  153  |  154  |  155  |  156  |  157  |  158  |  159  |  160 >>  »    »»






  Copyright © 2001-2025 Dmitry Leonov Design: Vadim Derkach