Bug 594792

Summary: zypper crashes [with T = const zypp::ResObject]: Assertion `px != 0' failed
Product: [openSUSE] openSUSE 11.3 Reporter: Dominique Leuenberger <dimstar>
Component: libzyppAssignee: Jan Kupec <jkupec>
Status: RESOLVED DUPLICATE QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P5 - None CC: kkaempf, ma
Version: Factory   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Third Party Developer/Partner Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: The stack trace mentioned in comment #0

Description Dominique Leuenberger 2010-04-08 12:57:04 UTC
(initiated based on mail thread at http://lists.opensuse.org/zypp-devel/2010-04/msg00010.html )

Factory setup, zypper version 1.4.0-3.3.x86_64

when launching
zypper up OpenOff* (To update the OpenOffice stack), I end up with:
Loading repository data...
Reading installed packages...
zypper: /usr/include/boost/smart_ptr/intrusive_ptr.hpp:149: T* boost::intrusive_ptr<T>::operator->() const [with T = const zypp::ResObject]: Assertion `px != 0' failed.
Aborted

Running the same command in gdb resulted in gdb segfaulting. The stack trace will be attached to the bug.
Comment 1 Dominique Leuenberger 2010-04-08 13:08:43 UTC
It seems to depend on the 'list' of packages to pass.

Issuing zypper up zlib* did work, zypper up yast* did fail the same way.
Comment 2 Dominique Leuenberger 2010-04-08 13:09:19 UTC
Created attachment 353168 [details]
The stack trace mentioned in comment #0
Comment 3 Michael Andres 2010-04-08 15:45:34 UTC
(In reply to comment #1)
> It seems to depend on the 'list' of packages to pass.

Yes. Zypper failed to test whether an installed item is actually present before printing it's data.

*** This bug has been marked as a duplicate of bug 591760 ***