Comment # 24 on bug 981011 from
@gnome-maintainers the complete backend code should be reviewed. 

There are several other locations where you retrieve some previously stored
package_id (here nome-color-manager-lang;3.24.0-2.3;noarch;repo-oss in
backend_update_packages_thread) and don't handle the case that the package_id
is no longer valid (see comment#7).

Your code should basically behave like this:

> sat::Solvable solvable = zypp_get_package_by_id( package_id );
> if ( ! solvable ) 
> { 
>    // Previously stored package_id no longer matches any solvable.
>    // May happen e.g. if repos meanwhile changed (add/remove/refresh)
> }
> else
> { 
>    // found matching solvable
> }

Construncting pointer types like a ui::Selectable::Ptr from a
sat::Solvable::noSolvable will result in a nullptr and leads to crashes like
the above.


You are receiving this mail because: