Home
mc-dev
mc-dev@conference.jabber.ru
24.03.2011< ^ >

Тема: http://www.midnight-commander.org | Latest stable release: 4.7.5.1
[00:43:48] slavazanko/h зашёл в конференцию
[02:34:42] il.smind вышел из конференции
[02:36:52] il.smind зашёл в конференцию
[06:18:43] andrew_b зашёл в конференцию
[07:36:36] <andrew_b> .
[07:46:20] <il.smind > andrew_b: поможешь?
[07:46:45] <il.smind > там самую малость
[07:46:53] <il.smind > надо seek сделать
[07:47:36] <il.smind > andrew_b: привет
[08:01:46] <andrew_b> Я же говорил: надо резать к чёртовой матери, не дожидаясь перетонита.
[08:01:55] <andrew_b> Я не припарки делать.
[08:16:04] <il.smind > andrew_b: там уже всё нормуль
[08:16:16] <il.smind > надо чуток только поправить
[08:17:24] <andrew_b> Понимаешь, если избавиться от копирования в темп, то будет ещё проще. Никаких сигналов не надо. Прерывать можно будет из диалога копирования.
[08:17:50] <il.smind > andrew_b: но это позже
[08:18:42] <il.smind > сейчас костылёк, он локальный и ничего не изменится при переходе от темпа
[08:18:58] <andrew_b> Изменится всё.
[08:19:03] <il.smind > нет
[08:19:12] <il.smind > посылаться так же будет
[08:19:15] <il.smind > порциями
[08:19:17] iNode вышел из конференции
[08:19:25] <il.smind > протокол обязывает
[08:19:41] <andrew_b> Все твои потуги по обработке SIGINT будут зряшными.
[08:19:49] <il.smind > а их мало
[08:19:53] <il.smind > потуг
[08:20:03] <andrew_b> Да я вижу. Какой день уже?
[08:20:19] <il.smind > потому что я туповат
[08:20:35] <il.smind > был бы по умнее за час бы управился
[08:24:55] <il.smind > всё я сик добавил
[08:25:10] <il.smind > можно голосовать
[08:25:27] <il.smind > для проверки могу пока не гасить отладку
[09:14:56] <andrew_b> il.smind : и что, работает?
[09:15:07] <il.smind > да
[09:15:18] <andrew_b> Странно. Не должно.
[09:15:19] <il.smind > всё ок
[09:15:26] <il.smind > почему?
[09:15:37] <andrew_b> 881 tty_disable_interrupt_key ();
882
883 if (tty_got_interrupt ())
[09:15:46] <il.smind > ща
[09:16:01] <andrew_b> После того, как прерывания запрещены, их проверять бесполезно.
[09:16:28] <andrew_b> Флаг обнуляется.
[09:16:39] <il.smind > ок
[09:16:52] <il.smind > надо переставить я не знал что обнуляется
[09:17:10] <il.smind > но основное прерывание не тут происходит а ниже
[09:17:14] <andrew_b> А в код посмотреть?
[09:20:28] <il.smind > я уже поправил и запушил
[09:20:40] <il.smind > в код смотрел
[09:21:29] <il.smind > про "вижу фигу" знаешь? вот именно "тот" случай
[09:30:54] <il.smind > andrew_b: собрал мультиэдит
[09:31:02] <il.smind > валится при запуске
[09:31:24] <il.smind > нужны дополнительные данные или ты в курсе?
[09:31:29] <andrew_b> Погоди пока собирать.
[09:31:35] <il.smind > при запуске редактора
[09:31:37] <andrew_b> У меня не валится.
[09:31:39] <il.smind > понял
[09:32:24] <andrew_b> В gdb запусти, покажи где.
[09:32:29] <il.smind > ок
[09:33:27] <slavazanko/w> всем привет
[09:33:38] <andrew_b> \o/
[09:37:25] <il.smind > #0 0x64652d64 in ?? ()
#1 0x0808181e in send_message (msg=WIDGET_INIT, reverse=0, flags=0,
h=<value optimized out>) at ../../lib/widget/widget-common.h:136
#2 dlg_broadcast_msg_to (msg=WIDGET_INIT, reverse=0, flags=0,
h=<value optimized out>) at dialog.c:138
#3 0x0808275c in init_dlg (h=0x8195090) at dialog.c:1079
#4 0x08082c7e in run_dlg (h=0x8195090) at dialog.c:1144
#5 0x080e1a77 in edit_file (_file=
0x818f398 "0001-Ticket-323-reimplimented-editor-macros.patch", line=0)
at editwidget.c:454
#6 0x0809d51d in do_edit_at_line (what=
0x818f398 "0001-Ticket-323-reimplimented-editor-macros.patch", internal=1,
start_line=0) at cmd.c:754
#7 0x0809d5ea in do_edit () at cmd.c:195
#8 edit_cmd () at cmd.c:786
#9 0x080b4d74 in midnight_execute_cmd (sender=0x818c848,
command=<value optimized out>) at midnight.c:1201
#10 0x080b5387 in midnight_callback (h=0x8193438, sender=0x818c848, msg=
DLG_ACTION, parm=42, data=0x0) at midnight.c:1585
#11 0x08080c70 in buttonbar_call (w=0x818c848, msg=WIDGET_HOTKEY, parm=1004)
at buttonbar.c:150
#12 buttonbar_callback (w=0x818c848, msg=WIDGET_HOTKEY, parm=1004)
at buttonbar.c:172
#13 0x08082984 in send_message (h=0x8193438, key=1004, event=0xbffff214)
at ../../lib/widget/widget-common.h:136
#14 dlg_try_hotkey (h=0x8193438, key=1004, event=0xbffff214) at dialog.c:421
#15 dlg_key_event (h=0x8193438, key=1004, event=0xbffff214) at dialog.c:470
#16 dlg_process_event (h=0x8193438, key=1004, event=0xbffff214) at dialog.c:1113
#17 0x08082d49 in frontend_run_dlg (h=0x8193438) at dialog.c:529
#18 run_dlg (h=0x8193438) at dialog.c:1145
#19 0x080b5fb7 in create_panels_and_run_mc () at midnight.c:986
#20 do_nc () at midnight.c:1730
#21 0x08057089 in main (argc=Cannot access memory at address 0x0
) at main.c:499
[09:38:07] <il.smind > slavazanko/w: привет
[09:38:26] <andrew_b> il.smind : хрень какая-то.
[09:43:18] <il.smind > andrew_b: что то еще показать?
[09:43:21] <andrew_b> il.smind : как ты думаешь, что это такое:

155 /* A lone up mustn't do anything */
156 if (edit->mark2 != -1 && (local.type & (GPM_UP | GPM_DRAG)) != 0)
157 return MOU_NORMAL;
[09:43:35] <andrew_b> editwidget.c
[09:43:46] <il.smind > примерно
[09:44:12] <il.smind > edit->mark2 != -1 понятно?
[09:44:23] <andrew_b> Что-то выделено?
[09:44:26] <il.smind > да
[09:44:56] <il.smind > в процессе выделения мышью
[09:45:53] <andrew_b> Убрал это условие. Ничего не изменилось.
[09:46:00] <il.smind > почти
[09:46:09] <il.smind > я тоже его пробовал убирать
[09:47:04] <andrew_b> И?
[09:47:09] <il.smind > только потом что то про
[09:47:13] <il.smind > глючивало
[09:47:21] <il.smind > ты поиграйся
[09:48:20] <andrew_b> Не знаю. Ничего не глючит.
[09:48:29] <il.smind > пробуй!
[09:48:38] <andrew_b> Вспоминай!
[09:49:28] <il.smind > ээх
[09:50:59] <andrew_b> Я а пока пойду поем.
[10:12:15] <slavazanko/w> в мультиэдите починили падение сегфолт после загрузки нового файла в редактор и попытки двигать фрейм?
[10:17:12] slavazanko/h вышел из конференции
[10:19:21] slavazanko/h зашёл в конференцию
[10:20:05] <slavazanko/w> я там коммитик сделал малюсенький...
[10:27:13] <andrew_b> slavazanko/w: да, починил.
[10:27:31] <andrew_b> Я переделываю там обработку событий от мыши.
[10:28:13] <andrew_b> slavazanko/w: а, поэтому и падает.
[10:28:23] <slavazanko/w> а. ок
[10:43:10] <Зося Синицкая> RSS: Новости для Midnight Commander
• Ticket #2495 (more info by mc -V) updated
http://www.midnight-commander.org/ticket/2495#comment:4
[10:48:21] iNode зашёл в конференцию
[11:12:12] <il.smind > грамотные есть?
[11:21:37] <andrew_b> il.smind : спрашивай.
[11:21:58] <il.smind > надо 68 собрать
[11:22:13] <il.smind > у меня почему то всё время вот это отрабатывает
[11:22:32] <il.smind > if (lseek (h, 0, w_bytes) == -1)
{
close (h);
mc_log ("read from NULL\n");
h = open ("/dev/zero", O_RDONLY);
}
[11:22:52] <il.smind > т.е. lseek (h, 0, w_bytes) возвращает ошибку
[11:23:01] <andrew_b> man lseek
[11:23:20] <il.smind > а поидее этот блок должен сработать только если не сикается
[11:24:08] <andrew_b> Ман хорошо читал?
[11:24:39] <il.smind > if (lseek (h, w_bytes, SEEK_SET);
[11:24:41] <il.smind > ?
[11:24:48] <andrew_b> Да.
[11:25:45] <il.smind > ок, собираю
[11:26:39] <andrew_b> Теперь я спрошу. http://www.midnight-commander.org/ticket/2514. Может, кроме хинтов, ещё и хелпы и маны не устанавливать при --disable-nls?
[11:32:29] <il.smind > по идее да
[12:14:16] BanderOS зашёл в конференцию
[12:15:30] <il.smind > andrew_b: помоги добить
[12:17:51] <andrew_b> ?
[12:20:46] <il.smind > что то не не так работает сик как я ждал
[12:40:08] <andrew_b> il.smind : кажись, завалило...
[12:40:45] <Зося Синицкая> RSS: Новости для Midnight Commander
• Ticket #2514 (Skip localized hints files installation when built with --disable-nls) updated
http://www.midnight-commander.org/ticket/2514#comment:1
[12:41:28] <il.smind > andrew_b> il.smind : кажись, завалило...
?
[12:42:02] <andrew_b> Тоннель.
[12:46:46] <il.smind > проверяй
[12:46:56] <il.smind > я на медосмотр ушел
[13:10:38] BanderOS вышел из конференции
[13:43:20] <slavazanko/w> http://midnight-commander.org/ticket/2495#comment:5
[13:43:39] <slavazanko/w> il.smind : http://midnight-commander.org/ticket/71
[14:01:36] <il.smind > не ну чо вы за люди то такие?!
[14:01:47] <slavazanko/w> ?
[14:01:57] <il.smind > помогите с сиком
[14:02:07] <il.smind > не путать с сиськой
[14:02:33] <slavazanko/w> говори в чём конкретно проблема. как воспроизвести
[14:02:36] <il.smind > не выходит цветов
[14:02:48] <il.smind > воспроизвести так
[14:02:52] <il.smind > копируем
[14:02:56] <il.smind > прерываем
[14:03:05] <il.smind > по ctrl-g
[14:03:24] <il.smind > скопированный файл смотрим
[14:03:35] <andrew_b> Надо бы ctrl-c вернуть, как у всех белых людей.
[14:03:45] <il.smind > и видим что там не тот кусок
[14:03:58] <il.smind > andrew_b> Надо бы ctrl-c вернуть, как у всех белых людей.
не надо
[14:04:46] <slavazanko/w> почему не надо?
[14:04:53] <il.smind > esc
[14:05:00] <il.smind > tckb xnj,s rfr e k.ltq
[14:05:03] <il.smind > если чтобы как у людей
[14:05:31] <andrew_b> Это в венде esc, а не у людей.
[14:05:37] <il.smind > потому что у нас tui
[14:05:51] <il.smind > а не коммандная строка
[14:06:17] <il.smind > давайте не будет уходить от текущего вопроса
[14:06:21] <il.smind > так вот
[14:06:30] <il.smind > алгоритм у меня такой
[14:07:18] <il.smind > допустим надо передать файл с содержимым
"012345678901234567890123456789"
[14:07:35] <il.smind > он передается порциями по 10 символов
[14:08:05] <il.smind > если вдруг нажат ctrl-g при передаче первого пакета
[14:08:27] <il.smind > то в буфере находится
"0123456789"
[14:08:45] <il.smind > при этом допустим что прервали в процессе передачи
[14:09:05] <il.smind > и уже фактически передано
012345
[14:09:15] <il.smind > а 6789 еще нет
[14:09:26] <il.smind > и сервер ждет их
[14:09:41] <il.smind > т.к. сказано что порция состоит из 10 символов
[14:10:39] <il.smind > передачей остатка занимается вот этот код
[14:10:59] <il.smind > 917 if (w_bytes < r_bytes)
918 {
919 /* try reread from current position, after break */
920 if (lseek (h, w_bytes, SEEK_SET) == -1)
921 {
922 close (h);
923 mc_log ("read from NULL\n");
924 h = open ("/dev/zero", O_RDONLY);
925 }
926 r_bytes = read (h, buffer, r_bytes - w_bytes);
927 w_bytes = write (SUP.sockw, buffer, (size_t) r_bytes);
[14:12:36] <il.smind > всё работает
[14:13:24] <il.smind > но не правильно
[14:13:45] <il.smind > т.е. вместо 6789 по факту другие байтики
[14:14:59] <andrew_b> Какие?
[14:16:42] <il.smind > другие
[14:16:47] <il.smind > я не понял
[14:17:03] <il.smind > если бы смог понять то было бы значительно проще
[14:17:49] <il.smind > может вообще левые
[14:18:10] <il.smind > может сик вообще не надо делать
[14:18:39] <andrew_b> Ну... Можно сначала проверить, где мы.
[14:18:52] <andrew_b> Потом решить, делать seek или нет.
[14:18:55] <andrew_b> Хотя...
[14:19:53] <andrew_b> Так это.

920 if (lseek (h, w_bytes, SEEK_SET) == -1)
[14:20:27] <andrew_b> w_bytes -- это сколько байт вычитано из файла. Но это не позиция в файле.
[14:20:44] <andrew_b> На w_bytes сикать нельзя.
[14:21:19] <andrew_b> Гоню.
[14:21:28] <andrew_b> w_bytes -- это сколько записано.
[14:22:37] <andrew_b> if (w_bytes < r_bytes) запросто, если w_bytes == -1. А при прерываниее так и есть.
[14:25:57] <andrew_b> 917 if (w_bytes < r_bytes)
Если это условие не срабатывает, то
933 if (w_bytes != r_bytes)
не страбатывает тоже, потому что w_bytes неможет быть больше r_bytes.
[14:30:28] <il.smind > 933 if (w_bytes != r_bytes)
не страбатывает тоже, потому что w_bytes неможет быть больше r_bytes.
не совсем
[14:30:52] <il.smind > if (w_bytes < r_bytes) приисхолдит изза прерывания
[14:31:20] <il.smind > там просто условия не хватает на tty_got_interrupt ()
[14:32:58] <andrew_b> Если прерываение, то w_bytes == -1. Нет?
[14:33:33] <andrew_b> Оно конечно меньше r_bytes, если не было ошибки чтения.
[14:33:55] <andrew_b> То есть если r_bytes тоже не равно -1.
[14:36:40] <il.smind > Если прерываение, то w_bytes == -1. Нет?
нет
[14:36:58] <il.smind > примерно так
read: [131072], write: 131072
answer: [### 200] [1]
fish_command: send [131072]
answer: [### 001] [1]
read: [131072], write: 98304
answer: [### 200] [1]
[14:37:07] <il.smind > прервали
read: [131072], write: 98304
[14:37:52] <il.smind > r_bytes тоже не равно -1. точно не равно по идее так как выше проверили
[14:38:26] <il.smind > 888 if (r_bytes < 0)
889 {
890 mc_log ("was_error = EIO\n");
891 was_error = EIO;
892 break;
893 }
[14:39:23] <andrew_b> Проверяй errno == EINTR.
[14:39:43] <andrew_b> Или tty_got_interrupt.
[14:54:29] qub зашёл в конференцию
[15:01:37] <il.smind > ты не понял наверное проблемы
[15:01:59] <il.smind > у меня не тем заполняется хвост
[15:02:06] <il.smind > остаток
[15:02:17] <il.smind > а должен тем
[15:02:50] <il.smind > значит я не правильно делаю
[15:02:56] <andrew_b> Да.
[15:03:34] <andrew_b> Почему ты делаешь seek на w_bytes?
[15:03:40] <il.smind > да
[15:03:46] <il.smind > естественно
[15:03:53] <il.smind > w_bytes уже передано
[15:04:03] <il.smind > значит их надо поскипать
[15:04:56] <andrew_b> Да, но не от начала файла.
[15:05:10] <il.smind > а откуда?
[15:05:15] <il.smind > а...
[15:05:16] <il.smind > да
[15:05:27] <andrew_b> Вот.
[15:05:33] <il.smind > я то думал что у меня куски лежат в темпе
[15:05:47] <andrew_b> В темпе у тебя лежит весь файл.
[15:05:47] <il.smind > а там то целый файл
[15:05:49] <il.smind > да
[15:06:00] <il.smind > вот этот совет я и ждал
[15:06:05] <il.smind > спасибо
[15:06:09] <andrew_b> Вот когда темпа не будет...
[15:06:23] <il.smind > то ничего не изменится
[15:06:29] <il.smind > вообще ничего
[15:06:53] <il.smind > передача работает с физическим файлом
[15:07:09] <il.smind > что он в темпе что там откуда копируем
[15:07:17] <il.smind > разницы 0
[15:07:26] <slavazanko/w> почему с физическим?
[15:07:33] <andrew_b> il.smind : Ты про файл ничего знать не будешь.
[15:07:39] <il.smind > вот на скачку сильно повлияет
[15:07:39] <slavazanko/w> копировать с ftp на fish уже низзя будет?
[15:07:59] <il.smind > slavazanko/w: да
[15:08:00] <andrew_b> Тебе будут приходить некие куски данных и их размер.
[15:08:02] <il.smind > нельзя
[15:08:12] <il.smind > но мы то умные программисты
[15:08:24] <il.smind > у нас всё будет в шоколаде
[15:08:40] <andrew_b> il.smind : да нельзя или да можно?
[15:08:51] <il.smind > да нельзя
[15:08:55] <il.smind > да можно
[15:09:02] <andrew_b> Дануна.
[15:09:04] <il.smind > зависит от реализации
[15:09:30] <il.smind > вот сейчас с этим темпом какая проблема
[15:09:48] <il.smind > проблема в том что файл переполняет темп
[15:09:57] <il.smind > если темп маленький
[15:10:02] <andrew_b> И это тоже.
[15:10:23] <il.smind > представим что мы делаем порционную передачу в темп
[15:10:35] <il.smind > используя темп как буфер
[15:10:52] <il.smind > тогда все наши проблемы решены
[15:10:57] <slavazanko/w> зачем? память чем плоха для буфера?
[15:10:58] <il.smind > но это полумеры
[15:11:00] <andrew_b> Я так думаю, что vfs -- это какая-то ранняя реализация avfs. В последней версии avfs никакого темпа нет.
[15:11:09] <il.smind > следующая итерация
[15:11:18] <andrew_b> Там прямо пишется в дескриптор.
[15:11:27] <il.smind > мы не пишем на диск а эти порции держим в памяти
[15:11:55] <andrew_b> Мы держим одну порцию.
[15:11:59] <il.smind > вроде всё тоже но уже без дёрганья винта
[15:12:09] <il.smind > да держим одну порцию
[15:12:25] <il.smind > ака только порцию получили отдаём ее дальше
[15:12:43] <il.smind > передали просим ещё
[15:12:47] <andrew_b> Размер которой известен. И этот размер нам предлагают увеличить. Или динамически изменять.
[15:12:57] <il.smind > вот такое мне видится решение
[15:14:13] <andrew_b> Это единственное решение, если избавиться от темпа.
[15:14:43] <il.smind > ну вобщем да
[15:14:52] <il.smind > но это некое развитие темпа
[15:14:58] <andrew_b> Глядите тикеты, которые на голосовании.
[15:15:59] <andrew_b> Никакого развития темпа не будет.
[15:16:13] <il.smind > ну как...
[15:16:29] <il.smind > сейчас копируется всё в темп
[15:16:31] <andrew_b> Писаться/читаться будет тот файл, который нужен.
[15:16:35] <il.smind > а будет кусками
[15:16:38] <andrew_b> Без лишних копирований.
[15:16:41] <il.smind > но не в темп
[15:16:53] <il.smind > копирования БУДУТ
[15:17:08] <il.smind > вот сам посуди
[15:17:18] <andrew_b> У тебя три минуты.
[15:17:31] <il.smind > ты копируешь из архива
[15:17:35] <andrew_b> Мне пораньше уйти надо.
[15:17:48] <andrew_b> Про архивы речь не идёт пока.
[15:17:52] <il.smind > ну как минимум глупо отдавать рыбе порциями по 1 байту
[15:18:07] <andrew_b> Пока идёт речь о простых файлах.
[15:18:16] <andrew_b> С архиваи своя история.
[15:18:18] <il.smind > замени архив на любую вфс
[15:19:01] <andrew_b> Всё, я ушёл.
[15:19:02] <il.smind > слава спрашивал про скопировать с фтп на рыбу
[15:19:10] <il.smind > скатертью
[15:19:14] andrew_b вышел из конференции: конец рабочего дня
[15:19:17] <il.smind > :)
[15:59:56] <slavazanko/w> http://img14.imageshack.us/img14/6932/terrorist2ur.gif
[16:03:31] <il.smind > 9 из 10 террористов используют носки
[16:03:49] <il.smind > вообще классная картинка :)
[16:03:56] <slavazanko/w> и 100% террористов дышат воздухом...
[16:27:20] slavazanko/h вышел из конференции
[16:29:34] slavazanko/h зашёл в конференцию
[16:50:36] slavazanko/w вышел из конференции
[17:15:00] andrew_b зашёл в конференцию
[17:18:39] andrew_b вышел из конференции: Replaced by new connection
[17:18:51] andrew_b зашёл в конференцию
[17:52:26] andrew_b вышел из конференции: Replaced by new connection
[17:52:30] andrew_b зашёл в конференцию
[18:01:20] <il.smind > andrew_b: !
[18:01:53] <il.smind > 68 готов, просьба посмотреть и поголосовать
[18:19:41] qub вышел из конференции
[19:04:00] <andrew_b> il.smind : сам-то чё не голосуешь?
[19:37:46] andrew_b вышел из конференции
[20:00:42] il.smind зашёл в конференцию
[20:13:10] <il.smind > andrew_b: голосую
[20:25:39] <il.smind > раньше такого не было
make[3]: Выход из каталога `/home/projects/mc.old/src/viewer'
Making all in editor
make[3]: Вход в каталог `/home/projects/mc.old/src/editor'
cd ../.. && /bin/sh /home/projects/mc.old/config/missing --run aut omake-1.11 --gnu src/editor/Makefile
configure.ac:377: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from.. .
../../lib/autoconf/general.m4:2730: _AC_RUN_IFELSE is expanded from ...
../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
../../lib/autoconf/general.m4:2749: AC_RUN_IFELSE is expanded from. ..
m4.include/mc-with-screen-slang.m4:24: MC_CHECK_SLANG_BY_PATH is ex panded from...
m4.include/mc-with-screen-slang.m4:174: MC_WITH_SLANG is expanded f rom...
m4.include/mc-with-screen.m4:8: MC_WITH_SCREEN is expanded from...
configure.ac:377: the top level
[20:28:08] <il.smind > это в 2261_multiedit
[20:39:41] il.smind вышел из конференции
[20:49:54] BanderOS зашёл в конференцию
[20:50:45] BanderOS вышел из конференции
[20:54:35] BanderOS зашёл в конференцию
[21:44:42] BanderOS вышел из конференции
[22:05:46] BanderOS зашёл в конференцию
[22:07:29] BanderOS вышел из конференции
[22:10:52] BanderOS зашёл в конференцию
[23:21:43] BanderOS вышел из конференции
Powered by freQ Powered by Python Valid XHTML 1.0 Transitional Valid CSS!