crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в SIGSEGV при отладке программы
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Гость Дата 3.7.2008, 18:11
  У меня все нормально.
Так что скорее проблема в компиляторе.
void* Дата 3.7.2008, 13:25
  короче прикол оказался в том, что под никсами (Kubuntu 8.04) никакого SIGSEGV вообще не произошло :)
поэтому у меня такое ощущение что это нативный диалог винды глюченый
Гость Дата 28.6.2008, 23:39
  Выложи полностью тестовый проект, чтобы можно было его собрать.
Я думаю вряд ли кто-то будет тратить время чтобы для твого класса тестовый проект создовать.
void* Дата 28.6.2008, 19:52
  MSVC++ почти никогда не пользовался принципиально, gdb меня как отладчик устраивает, дело не в этом. Насколько я понял где-то при щелчке на кнопку начинается бесконечная рекурсия и поэтому в backtrace столько _libkernel32_a_iname(). Вобщем выкладываю весь код, очень надеюсь на вашу помощь.

вот так создается это диалоговое окно в главном окне:
void MainWindow::newProject() { 
     CPDialog *dialog = new CPDialog(this);
     connect(dialog, SIGNAL(needCreateProject(CPDialog::ProjectType, const QString&, const QString&)),
     this, SLOT(createNewProject(CPDialog::ProjectType, const QString&, const QString&)));
     if(dialog->exec() == QDialog::Accepted || dialog->exec() == QDialog::Rejected) {
                       delete dialog;
                       }
     //...
}

вот весь класс диалогового окна:
скачать с webfile.ru
скачать с slil.ru
Гость Дата 28.6.2008, 19:03
  Установи MSVS - и используй нормальный отладчик - кучу времени сэкономишь.
void* Дата 27.6.2008, 18:55
 
Цитата(Red Devil @ 27.6.2008, 18:41) *
Что за глюки при релизе ?

там странный глюк: есть кнопка связанная со слотом reject(), но при запуске программы на нее приходится нажимать два раза, т.к. с первого раза диалоговое окно не закрывается. В отладчике ничего подозрительного не нашел вроде...
Red Devil Дата 27.6.2008, 18:41
  Попробуй проект создать тестовый, и там тоже самое сделать.
Если там повторится - то нужно искать причины в другом месте.
Что за глюки при релизе ?
void* Дата 27.6.2008, 17:13
 
Цитата(ViGOur @ 27.6.2008, 16:23) *
Читаем мануал: Отладка с помощью GDB

кстати мануальчик этот я читал, правда на другом сайте, мне бы понять почему у меня фатальный сигнал срабатывает, кстати еще выяснил что вылетает на этой строчке:
 dir = QFileDialog::getExistingDirectory(0, tr("Обзор"), "", QFileDialog::ShowDirsOnly);

т.к. до следующей даже не доходит...
ViGOur Дата 27.6.2008, 16:23
 
Цитата(Litkevich Yuriy @ 27.6.2008, 16:49) *
gdb, для меня вообще загадочная софтина. Без нее все нормально. Видимо ее как-то надо настроить.
Читаем мануал: Отладка с помощью GDB
Litkevich Yuriy Дата 27.6.2008, 15:49
  gdb, для меня вообще загадочная софтина. Без нее все нормально. Видимо ее как-то надо настроить.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.4.2024, 13:37