Mailinglist Archive: opensuse-bugs (3354 mails)

< Previous Next >
[Bug 981011] PackageKit dumps core
  • From: bugzilla_noreply@xxxxxxxxxx
  • Date: Tue, 24 May 2016 12:02:31 +0000
  • Message-id: <bug-981011-21960-0goTrKLgdX@http.bugzilla.opensuse.org/>
http://bugzilla.opensuse.org/show_bug.cgi?id=981011
http://bugzilla.opensuse.org/show_bug.cgi?id=981011#c7

Michael Andres <ma@xxxxxxxx> changed:

What |Removed |Added
----------------------------------------------------------------------------
Flags|needinfo?(ma@xxxxxxxx) |

--- Comment #7 from Michael Andres <ma@xxxxxxxx> ---
(In reply to Dominique Leuenberger from comment #5)
That sseems PK passing the objects from libzypp over an iterrator - as there
was no change just recently in PK I have to assume a change in libzypp might
cause this.

@Michael: can you recall a change that might cause this?

No.


But if I look at the PK backend code and the BT location is correct:

#5 backend_get_update_detail_thread (...) at pk-backend-zypp.cpp:2454

2454: make<ResObject>(solvable)->description().c_str (), // update-text

The surrounding for-loop creates 'sat::Solvable solvable' from package_ids
which seem to have been determined and stored before:
2406 sat::Solvable solvable = zypp_get_package_by_id (package_ids[i]);
2407 MIL << package_ids[i] << " " << solvable << endl;

There's no check whether the sat::Solvable returned by get_package_by_id is
actually valid:
if ( ! solvable )
{
// Previously stored package_id no longer matches any solvable.
// May happen e.g. if repos meanwhile changed (add/remove/refresh)
}

In this case ' make<ResObject>(solvable)' in line 2454 is a nullptr.




If the backend logging is on, the log line written @2407 (MIL <<...) should
tell whether this is what happened.

--
You are receiving this mail because:
You are on the CC list for the bug.
< Previous Next >
References