Summary: | Solver and Magic reveal conflict (failed assertions) | ||
---|---|---|---|
Product: | [Applications] kmines | Reporter: | Danilo Piazzalunga <dpaina> |
Component: | general | Assignee: | Hadacek Nicolas <hadacek> |
Status: | RESOLVED FIXED | ||
Severity: | crash | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Debian testing | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | Calls Solver with completeReveal disabled |
Description
Danilo Piazzalunga
2003-09-26 13:31:03 UTC
Created attachment 2619 [details]
Calls Solver with completeReveal disabled
This patch solves the problem by disabling completeReveal before starting the
Solver, and then restoring it to its previous status after the Solver has
finished its job.
[ The program can still crash if, while the Solver is running, a (nasty) user
interferes (by revealing cells, starting a new game, etc.). But that's user's
fault :-P ]
I have no clue about kmines and the patch above, but at least I can confirm, that starting kmines and the clicking on Move->Solving rate...->start crashes kmines: (KDE 3.2 beta1, CVS version from 2003-11-02) 0x413d0a86 in waitpid () from /lib/i686/libpthread.so.0 #0 0x413d0a86 in waitpid () from /lib/i686/libpthread.so.0 #1 0x408c9673 in KCrash::defaultCrashHandler(int) (sig=11) at /home/cvs/kde20/kdelibs/kdecore/kcrash.cpp:246 #2 0x413cf96c in __pthread_sighandler () from /lib/i686/libpthread.so.0 #3 <signal handler called> #4 0x08077b27 in AdviseFast::FactSet::reveal(QPair<int, int>, std::set<QPair<int, int>, std::less<QPair<int, int> >, std::allocator<QPair<int, int> > >*) () #5 0x08070a24 in AdviseFast::RuleSet::reveal(QPair<int, int>) () #6 0x0806df4a in Solver::solveStep() () #7 0x0806d298 in Solver::qt_invoke(int, QUObject*) () #8 0x40cfc730 in QObject::activate_signal(QConnectionList*, QUObject*) () from /mnt/hdc6/home/cvs/kde20/qt-copy/lib/libqt-mt.so.3 #9 0x40fec506 in QSignal::signal(QVariant const&) () I just commited a fix to CVS HEAD. Please test ... will backport soon. thanks for the report. |