What | Removed | Added |
---|---|---|
Flags | needinfo?(ma@suse.com) |
(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.