Could you check whether the attached patch fixes this crash for you?
Thanks,
Daniel
diff -r d7b9be7d79c7 src/gtk/resolver.cc
--- a/src/gtk/resolver.cc Mon Apr 27 07:04:56 2009 -0700
+++ b/src/gtk/resolver.cc Mon Apr 27 18:37:08 2009 -0700
@@ -1541,13 +1541,20 @@
}
break;
case action_keep:
- {
- const char * const
- tmpl(first ? _("<b>Keep</b> %s at version %s") : _("<b>keep</b> %s at version %s"));
- list_text += ssprintf(tmpl,
- Glib::Markup::escape_text(ver.get_pkg().Name()).c_str(),
- Glib::Markup::escape_text(ver.get_ver().VerStr()).c_str());
- }
+ if(!ver.get_ver().end())
+ {
+ const char * const
+ tmpl(first ? _("<b>Keep</b> %s at version %s") : _("<b>keep</b> %s at version %s"));
+ list_text += ssprintf(tmpl,
+ Glib::Markup::escape_text(ver.get_pkg().Name()).c_str(),
+ Glib::Markup::escape_text(ver.get_ver().VerStr()).c_str());
+ }
+ else
+ {
+ const char * const
+ tmpl(first ? _("<b>Cancel</b> the installation of %s") : _("<b>cancel</b> the installation of %s"));
+ list_text += ssprintf(tmpl, Glib::Markup::escape_text(ver.get_pkg().Name()).c_str());
+ }
break;
case action_install:
{