From kde-core-devel Sat Feb 05 17:39:35 2011 From: "Dawit Alemayehu" Date: Sat, 05 Feb 2011 17:39:35 +0000 To: kde-core-devel Subject: Review Request: Fix a VLC crash by delaying object deletion to avoid Message-Id: <20110205173935.5545.13037 () vidsolbach ! de> X-MARC-Message: https://marc.info/?l=kde-core-devel&m=129692764012282 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============0750278608176274181==" --===============0750278608176274181== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/100577/ ----------------------------------------------------------- Review request for kdelibs. Summary ------- As described in the bug report when opening the file dialog, canceling it a= nd exiting VLC causes the application to seg fault. The backtraces posted i= n the bug report shows that the crash happens somewhere in QtDBus and I get= a similar backtrace when using v1.1.7 of this application. = When I looked into this issue what I discovered was that only KIO classes t= hat register themselves with QtDBus cause the crash. I only found that out = because fixing the crash in KIO::Scheduler by defering its deletion using d= eleteLater() did not prevent the application from still crashing on exit. H= owever, the crash had moved to another location, KBookmarkManager. The only= common thing between the crash at KBookmarkmanager and KIO::Scheduler was = that in both cases the backtrace shows QtDBus attempting to invoke or acces= s some method or slot in the object that was just destroyed. At this point = I decided to check how many other classes in KIO register themselves with Q= tDBS and found only one and applied the same change to all three, defer del= etion of any object registered with QtDBus using QObject::deleteLater. = Anyhow, I have no idea why the crashes are only seen with this application.= I was not able to duplicate the crash using the same sequences in another = Qt only app, Arora and none of the KDE applications I tried. This addresses bug 234484. http://bugs.kde.org/show_bug.cgi?id=3D234484 Diffs ----- kio/kio/scheduler.cpp d5fab85 = kio/bookmarks/kbookmarkmanager.cc 9086fd2 = kio/kio/fileundomanager.cpp ca1cbbb = Diff: http://git.reviewboard.kde.org/r/100577/diff Testing ------- Thanks, Dawit --===============0750278608176274181== Content-Type: text/html; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable
This is an automatically generated e-mail. To reply, visit: http://git.revie= wboard.kde.org/r/100577/

Review request for kdelibs.
By Dawit Alemayehu.

Descripti= on

As described in the bug report when opening the file dialog,=
 canceling it and exiting VLC causes the application to seg fault. The back=
traces posted in the bug report shows that the crash happens somewhere in Q=
tDBus and I get a similar backtrace when using v1.1.7 of this application. =


When I looked into this issue what I discovered was that only KIO classes t=
hat register themselves with QtDBus cause the crash. I only found that out =
because fixing the crash in KIO::Scheduler by defering its deletion using d=
eleteLater() did not prevent the application from still crashing on exit. H=
owever, the crash had moved to another location, KBookmarkManager. The only=
 common thing between the crash at KBookmarkmanager and KIO::Scheduler was =
that in both cases the backtrace shows QtDBus attempting to invoke or acces=
s some method or slot in the object that was just destroyed. At this point =
I decided to check how many other classes in KIO register themselves with Q=
tDBS and found only one and applied the same change to all three, defer del=
etion of any object registered with QtDBus using QObject::deleteLater. =


Anyhow, I have no idea why the crashes are only seen with this application.=
 I was not able to duplicate the crash using the same sequences in another =
Qt only app, Arora and none of the KDE applications I tried.
Bugs: 234484

Diffs=

  • kio/kio/scheduler.cpp (d5fab85)
  • kio/bookmarks/kbookmarkmanager.cc (9086fd2= )
  • kio/kio/fileundomanager.cpp (ca1cbbb)

View Diff

--===============0750278608176274181==--