Help needed

Hamish Rodda rodda at kde.org
Thu Nov 8 12:38:59 UTC 2007


Hi,

The reason for the following valgrind-detected issue eludes me. It seems that 
the expression visitor uses a URL which has also been used by the 
ClassBrowser, but I don't see how/why it's been freed... any ideas?

==17036== Thread 3:
==17036== Invalid read of size 1
==17036==    at 0x4EEEFB7: _char(char**, char, ErrorInfo*) (qurl.cpp:284)
==17036==    by 0x4EEF09C: _pctEncoded(char**, char*, ErrorInfo*) 
(qurl.cpp:311)
==17036==    by 0x4EF15DC: _regName(char**, QByteArray*, ErrorInfo*) 
(qurl.cpp:746)
==17036==    by 0x4EF3842: _host(char**, QByteArray*, ErrorInfo*) 
(qurl.cpp:760)
==17036==    by 0x4EF38D6: _authority(char**, QByteArray*, QByteArray*, int*, 
ErrorInfo*) (qurl.cpp:822)
==17036==    by 0x4EF3A2C: _hierPart(char**, QByteArray*, QByteArray*, int*, 
QByteArray*, ErrorInfo*) (qurl.c
pp:1018)
==17036==    by 0x4EF4AEB: QUrlPrivate::parse(QUrlPrivate::ParseOptions) const 
(qurl.cpp:3363)
==17036==    by 0x4EF863F: QUrlPrivate::validate() const (qurl.cpp:3304)
==17036==    by 0x4EF8987: QUrl::isValid() const (qurl.cpp:3657)
==17036==    by 0x62B6FB8: KUrl::equals(KUrl const&, 
QFlags<KUrl::EqualsOption> const&) const (kurl.cpp:517)
==17036==    by 0x2097384A: Cpp::ExpressionVisitor::visitName(NameAST*) 
(expressionvisitor.cpp:467)
==17036==    by 0x20DE375D: Visitor::visit(AST*) (visitor.cpp:109)
==17036==  Address 0x279ED007 is 31 bytes inside a block of size 128 free'd
==17036==    at 0x4C2182B: free (vg_replace_malloc.c:233)
==17036==    by 0x4E72B30: qFree(void*) (qglobal.cpp:1967)
==17036==    by 0x4E7D56E: QByteArray::operator=(QByteArray const&) 
(qbytearray.cpp:811)
==17036==    by 0x4EF8622: QUrlPrivate::validate() const (qurl.cpp:3303)
==17036==    by 0x4EF8987: QUrl::isValid() const (qurl.cpp:3657)
==17036==    by 0x62B6FB8: KUrl::equals(KUrl const&, 
QFlags<KUrl::EqualsOption> const&) const (kurl.cpp:517)
==17036==    by 0x62B73D9: KUrl::isParentOf(KUrl const&) const (kurl.cpp:1693)
==17036==    by 0x66452D2: KDevelop::Project::fileForUrl(KUrl const&) const 
(project.cpp:339)
==17036==    by 0x6644A13: KDevelop::Project::inProject(KUrl const&) const 
(project.cpp:303)
==17036==    by 0x663E8D5: KDevelop::ProjectController::findProjectForUrl(KUrl 
const&) const (projectcontroll
er.cpp:483)
==17036==    by 0x164ABE90: ClassModel::filterObject(KDevelop::DUChainBase*) 
const (classmodel.cpp:114)
==17036==    by 0x164AC9FF: ClassModel::contextAdded(ClassModel::Node*, 
KDevelop::DUContext*) (classmodel.cpp
:386)

Cheers,
Hamish
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20071108/7265a931/attachment.sig>


More information about the KDevelop-devel mailing list