[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kdevelop-bugs
Subject:    [Bug 306695] New: Crash when changing method signature
From:       Rolf Eike Beer <kde () opensource ! sf-tec ! de>
Date:       2012-09-12 18:23:59
Message-ID: bug-306695-40295 () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=306695

            Bug ID: 306695
          Severity: normal
           Version: 4.3.60
          Priority: NOR
          Assignee: kdevelop-bugs@kdevelop.org
           Summary: Crash when changing method signature
    Classification: Unclassified
                OS: Linux
          Reporter: kde@opensource.sf-tec.de
          Hardware: openSUSE RPMs
            Status: NEW
         Component: Language Support: CPP
           Product: kdevelop

For this to work you need a header and a source file both belonging to the same
class. The source file must _not_ be open. Both must be part of a project (i.e.
known to KDevelop) and parsed.

Reproducible: Always

Steps to Reproduce:
1. Go to the constructor of the class in the header file and change it's
interface, e.g. remove or add a parameter.
2. When the popup comes asking you to update the implementations signature
select "1" (i.e. let KDevelop do the update)
3. Crash



Thread 1 (Thread 0x7f4f464a9760 (LWP 5057)):
[KCrash Handler]
#6  0x00007f4f16e0a6fa in Cpp::AdaptSignatureAction::execute (this=<optimized
out>) at
/usr/src/debug/kdevelop4-4.3.80git.1345814513/languages/cpp/codegen/adaptsignatureaction.cpp:178
#7  0x00007f4f45be8925 in
KDevelop::IAssistantAction::qt_metacall(QMetaObject::Call, int, void**) () from
/usr/lib64/libkdevplatforminterfaces.so.7
#8  0x00007f4f44034e06 in QObject::event (this=0x8922340, e=<optimized out>) at
kernel/qobject.cpp:1204
#9  0x00007f4f4339efe4 in notify_helper (e=0x90ffbe0, receiver=0x8922340,
this=0x13868f0) at kernel/qapplication.cpp:4551
#10 QApplicationPrivate::notify_helper (this=0x13868f0, receiver=0x8922340,
e=0x90ffbe0) at kernel/qapplication.cpp:4523
#11 0x00007f4f433a3db3 in QApplication::notify (this=0x7fff456ea3d0,
receiver=0x8922340, e=0x90ffbe0) at kernel/qapplication.cpp:4412
#12 0x00007f4f4483c246 in KApplication::notify (this=0x7fff456ea3d0,
receiver=0x8922340, event=0x90ffbe0) at
/usr/src/debug/kdelibs-4.9.1/kdeui/kernel/kapplication.cpp:311
#13 0x00007f4f4401bd0c in QCoreApplication::notifyInternal
(this=0x7fff456ea3d0, receiver=0x8922340, event=0x90ffbe0) at
kernel/qcoreapplication.cpp:915
#14 0x00007f4f4401f5ba in sendEvent (event=0x90ffbe0, receiver=0x8922340) at
kernel/qcoreapplication.h:231
#15 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0,
data=0x12dc7a0) at kernel/qcoreapplication.cpp:1539
#16 0x00007f4f4404a9a3 in sendPostedEvents () at kernel/qcoreapplication.h:236
#17 postEventSourceDispatch (s=0x138a540) at
kernel/qeventdispatcher_glib.cpp:279
#18 0x00007f4f3ca1b5dd in g_main_context_dispatch () from
/usr/lib64/libglib-2.0.so.0
#19 0x00007f4f3ca1bdd8 in ?? () from /usr/lib64/libglib-2.0.so.0
#20 0x00007f4f3ca1bfa9 in g_main_context_iteration () from
/usr/lib64/libglib-2.0.so.0
#21 0x00007f4f4404adcf in QEventDispatcherGlib::processEvents (this=0x12dc060,
flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#22 0x00007f4f4344269e in QGuiEventDispatcherGlib::processEvents
(this=<optimized out>, flags=<optimized out>) at
kernel/qguieventdispatcher_glib.cpp:204
#23 0x00007f4f4401a842 in QEventLoop::processEvents (this=<optimized out>,
flags=...) at kernel/qeventloop.cpp:149
#24 0x00007f4f4401aa97 in QEventLoop::exec (this=0x7fff456ea150, flags=...) at
kernel/qeventloop.cpp:204
#25 0x00007f4f4401f8b5 in QCoreApplication::exec () at
kernel/qcoreapplication.cpp:1187
#26 0x000000000040fb5a in main (argc=<optimized out>, argv=<optimized out>) at
/usr/src/debug/kdevelop4-4.3.80git.1345814513/app/main.cpp:518

When I hit this the last time I looked in detail after restoring the files. I
had changed the type of a constructor argument. The old arguments (2 unchanged
ones and one changed) were removed from the implementations, so the constructor
had 3 arguments in the header and none in the source file.

-- 
You are receiving this mail because:
You are the assignee for the bug.

_______________________________________________
KDevelop-bugs mailing list
KDevelop-bugs@kdevelop.org
https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-bugs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic