[Psi-devel] QCA SecureAllocator inplace_merge threading? bug

Norman Rasmussen norman at rasmussen.co.za
Wed Apr 18 05:00:06 PDT 2007


Hey all,

(I'm sending to psi-dev & delta, but fyi: I'm not a subscriber to
delta, so please cc me in replies on that list)

I'm using my Psi build from Apr 3, and it's giving me a strange bug
fairly randomly but it's made worse when many vCards are being fetched
at once.

Exception message: "sequence not ordered"

Here's a simplified stack trace:

std::inplace_merge(std::_Vector_iterator _First, std::_Vector_iterator
_Mid, _Last, bool* _Pred=0x00709a60)
QCA::Botan::SecureAllocator::deallocate(void * ptr=0x04baa018,
unsigned int n=37552)
QCA::Botan::MemoryRegion<unsigned char>::deallocate(unsigned char *
p=0x04baa018, unsigned int n=37549)
QCA::Botan::MemoryRegion<unsigned char>::~MemoryRegion<unsigned char>()
QCA::Botan::SecureVector<unsigned char>::~SecureVector<unsigned char>()
QCA::Botan::SecureVector<unsigned char>::`scalar deleting destructor'()
QSecureArray::Private::resize(int new_size=37552)
QSecureArray::resize(int size=37552)
QCA::Filter::process(const QSecureArray & a={...})
QCA::TextFilter::encode(const QSecureArray & a={...})
QCA::TextFilter::arrayToString(const QSecureArray & a={...})
XMPP::VCard::toXml(QDomDocument * doc=0x0012c018)

Basically it looks like the SecureAllocator list is becoming
unordered, which is a nasty bug.  Might be threading thats doing it?

-- 
- Norman Rasmussen
 - Email: norman at rasmussen.co.za
 - Home page: http://norman.rasmussen.co.za/


More information about the psi-devel mailing list