Review Request: Fix crash caused by wrong usage of STL iterators

Aleix Pol Gonzalez aleixpol at gmail.com
Wed Nov 7 12:12:10 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/107236/#review21546
-----------------------------------------------------------


The change is ok (to remove itEnd and query the end iterator every time, that's good). I don't like the change to while() though, please bring for(;;) back

- Aleix Pol Gonzalez


On Nov. 7, 2012, 11:04 a.m., Kevin Funk wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/107236/
> -----------------------------------------------------------
> 
> (Updated Nov. 7, 2012, 11:04 a.m.)
> 
> 
> Review request for KDevelop and Aleix Pol Gonzalez.
> 
> 
> Description
> -------
> 
> Fix crash caused by wrong usage of STL iterators
> 
> Before this patch it might have been possible to iterate beyond the
> end() of the hash(es).
> 
> Also see 'erase'  in http://doc.qt.digia.com/qq/qq12-qt4-iterators.html.
> 
> Regression introduced by: 227a8456
> 
> BUG: 309442
> 
> BT:
> (...)
> 10 0x00007ff556999af3 in qt_assert_x (where=0x7ff556b6778a "QHash",
> what=0x7ff556b67773 "Iterating beyond end()", file=0x7ff556b67740
> "/home/krf/devel/src/qt/src/corelib/tools/qhash.cpp", line=293) at
> /home/krf/devel/src/qt/src/corelib/global/qglobal.cpp:2021
> 11 0x00007ff5569cbdfd in QHashData::nextNode (node=0x9b3e7e0) at
> /home/krf/devel/src/qt/src/corelib/tools/qhash.cpp:293
> 12 0x00007ff5255211fc in QHash<KUrl, KUrl>::iterator::operator++
> (this=this at entry=0x7fffce6aa370) at
> /home/krf/devel/build/qt4.8-shared-debug/include/QtCore/../../../../src/qt/src/corelib/tools/qhash.h:355
> 13 0x00007ff52551ada4 in CMakeManager::cleanupToDelete
> (this=this at entry=0x5cfdda0, p=0x8cedfe0) at
> /home/krf/devel/src/kdevelop/projectmanagers/cmake/cmakemanager.cpp:1150
> (...)
> 
> 
> Diffs
> -----
> 
>   projectmanagers/cmake/cmakemanager.cpp ce65427a14d4dbde04e16c0c9acc73d90d995fbc 
> 
> Diff: http://git.reviewboard.kde.org/r/107236/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Kevin Funk
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20121107/48592cb0/attachment.html>


More information about the KDevelop-devel mailing list