Показать сообщение отдельно
  #64  
Старый 01.07.2018, 12:04
Semen Panevin
Guest
 
Сообщений: n/a
По умолчанию Re: Spellchecker issue

Semen Panevin написал(а) к All в Jul 18 10:23:40 по местному времени:

Доброго здоровьица тебе, All!

Пересобрал 7м gcc, теперь падает с другой ошибкой, free(): invalid pointer
но всё равно падает :(

Неужели ни у кого кто дружит с cpp, кодом голдеда и дебаггером, проблема не воспроизводится?


Saturday April 22 2017 14:10, Semen Panevin послал All:

SP> Доброго здоровьица тебе, All!

SP> В продолжение темы...

SP> Добрался наконец-то до gdb

SP> Падает вот так:

SP> --------------------------
SP> (gdb) bt
SP> #0 0xb7fdac60 in _kernelvsyscall ()
SP> #1 0xb7afc34b in raise () from /lib/libc.so.6
SP> #2 0xb7afd971 in abort () from /lib/libc.so.6
SP> #3 0xb7b38707 in ?? () from /lib/libc.so.6
SP> #4 0xb7b3eabf in ?? () from /lib/libc.so.6
SP> #5 0xb7b3f282 in ?? () from /lib/libc.so.6
SP> #6 0xb7d825a1 in operator delete(void*) () from
SP> /usr/lib/gcc/i686-pc-linux-gnu/5.4.0/libstdc++.so.6 #7 0xb7d82691 in
SP> operator delete[](void*) () from
SP> /usr/lib/gcc/i686-pc-linux-gnu/5.4.0/libstdc++.so.6 #8 0x8015309f in
SP> CSpellLang::RecodeText (this=0x809a21a0, srcText=0xbfffdcfc "фыважо",
SP> dstText=...,
SP> flag=true) at gespell.cpp:722
SP> #9 0x80153426 in CSpellChecker::Check (this=0xbfffe380,
SP> text=0xbfffdcfc "фыважо") at gespell.cpp:908 #10 0x8009d336 in
SP> IEclass::dispstringsc (this=0xbfffe2b4,
SP> buf=0xbfffde5c "причё fasidjf;;asjf;sfj fdsa фыважо", ' '
SP> <repeats 72 times>, _beg=0, _end=107,
SP> _row=2, _col=0, endchar=0 '\000') at geedit.cpp:287
SP> #11 0x8009e3ff in IEclass::dispstring (this=0xbfffe2b4,
SP> line=0x809a2778, row=2) at geedit.cpp:443 #12 0x8009e55d in
SP> IEclass::displine (this=0xbfffe2b4, _line=0x809a2778, _row=2) at
SP> geedit.cpp:608 #13 0x800a2216 in IEclass::wrapit (this=0xbfffe2b4,
SP> _currline=0xbfffe348, __currcol=0xbfffe320,
SP> _curr_row=0xbfffe324, _display=true) at geedit.cpp:1141
SP> #14 0x800a24de in IEclass::wrapins (this=0xbfffe2b4,
SP> _currline=0xbfffe348, __currcol=0xbfffe320,
SP> _curr_row=0xbfffe324, _display=true) at geedit.cpp:1207
SP> #15 0x800a2d75 in IEclass::insertchar (this=0xbfffe2b4, ch=207 'о')
SP> at geedit.cpp:1255 #16 0x800a5e41 in IEclass::Start (this=0xbfffe2b4,
SP> _mode=256, __position=0xbfffe540, _msg=0x802c8404)
SP> at geedit.cpp:3025
SP> #17 0x8009c52e in EditMsg (_mode=256, _position=0xbfffe540,
SP> msg=0x802c8404) at geedit2.cpp:1998 #18 0x800d2fec in MakeMsg2
SP> (cmpmsg=<optimized out>, oldmsg=<optimized out>, msg=<optimized out>,
SP> topline=<synthetic pointer>, forwstat=<synthetic pointer>,
SP> status=<synthetic pointer>,
SP> mode=<synthetic pointer>) at gepost.cpp:593
SP> #19 MakeMsg (mode=<optimized out>, omsg=0x802c414c,
SP> ignore_replyto=false) at gepost.cpp:1137 #20 0x800ee07f in NewMsg ()
SP> at getpls.cpp:1050 #21 0x800e2d4f in Reader () at geread.cpp:847 #22
SP> 0x8005129e in main (argc=1, argv=0xbffff394) at gemain.cpp:53
SP> ---------------------------

SP> Идеи? Кто с цпп дружит, может глянете одним глазком в код?

SP> Вроде бы по трейсу понятно что падает именно голдед а не hunspell.

SP> 722 строка файла gespell.cpp выглядит как
SP> delete[] dstbuffer;

SP> Ниже цитата с чего всё началось.

SP> Tuesday September 06 2016 08:32, Semen Panevin писал Semen Panevin:

SP>> Доброго здоровьица тебе, Semen!

SP>> Monday September 05 2016 22:59, Semen Panevin писал golded+
SP>> inspector:

SP>>> Sorry for English language.

SP>>> Re-compiled with new sources right after the change. It worked
SP>>> well until today, when I tried to answer in R50.SYSOP.DRUNKS, it
SP>>> stopped with some error and broke my terminal (I'm not sure that
SP>>> I tried to write messages between these events) right after the
SP>>> internal editor were loaded.

SP>>> I tried to write here the error and it started the editor well,
SP>>> but when I tried to enter a few Russian characters it stopped
SP>>> again with the same or very similar error.

SP>>> I'm surprised that I can write English with no errors.

SP>>> Please somebody, help me to understand the problem and fix it.

SP>> В выводе после падения вот такая галиматья

SP>> =============================
SP>> 7745000-b7746000 ---p 00051000 08:03 26804702
SP>> /lib/libncurses.so.5.9

SP>> b7746000- b7748000 r--p 00051000 08:03 26804702
SP>> /lib/libncurses.so.5.9

SP>> b7748000-b7749000 rw-p 00053000 08:03 26804702
SP>> /lib/libncurses.so.5.9
SP>>
SP>> b7749000-b77a1000 r-xp 00000000 08:03 26608268
SP>> /usr/lib/libhunspell-1.3.so.0.0.0

SP>> b77a1000-b77a2000 r--p 00057000 08:03 26608268
SP>> /usr/lib/libhunspell-1.3.so.0.0.0

SP>> b77a2000-b77a6000 rw-p 00058000 08:03 26608268
SP>> /usr/lib/libhunspell-1.3.so.0.0.0

SP>> b77b2000-b77b3000 rw-p 00000000 00:00 0
SP>> b77b3000-b77b5000 r--p 00000000 00:00 0
SP>> [vvar]

SP>> b77b50 00-b77b6000 r-xp 00000000 00:00 0 [vdso]
SP>> b77b6000-b77d7000
SP>> r-xp
SP>> 00000000 08:03 42560235 /lib/ld-2.22.so
SP>> b77d7000-b77d8000 rw-p 00000000
SP>> 00:00 0

SP>> b77d800 0-b77d9000 r--p 00021000 08:03 42560235 /lib/ld-2.22.so

SP>> b77d9000-b77da000 rw-p 00022000 08:03 42560235 /lib/ld-2.22.so
SP>> bff6f000-bffa4000 rw-p
SP>> 00000000 00:00 0 [stack]
SP>> /home/fido/bin/golded: line 4: 9825 Аварийный
SP>> останов
SP>> =============================

SP>> В общем похоже, что падает спеллчекер, спотыкается на русских
SP>> словах. Раньше не падал. Значит я вижу два варианта - или
SP>> повреждён пользовательский словарь (в чём лично я сильно
SP>> сомневаюсь) либо падать стало после апгрейда gcc на очередную
SP>> версию...

SP>> Как можно заметить по этому письму, с отключенным спеллчекером
SP>> всё работает.

SP>> С наилучшими пожеланиями, Семён.

SP>> ... От правды далеко не убежишь (с) Sage

SP> С наилучшими пожеланиями, Семён.

SP> ... В гостях хорошо, а дома хуже...

С наилучшими пожеланиями, Семён.

... Без крыльев далеко не улетишь
--- GoldED+/LNX 1.1.5-b20170303 (Linux 4.1.12-gentoo iF6M10)
Ответить с цитированием