diff --git a/setup.py b/setup.py index c6f8391..6619048 100644 --- a/setup.py +++ b/setup.py @@ -11,6 +11,7 @@ module_pEp = Extension('pEp', include_dirs = [prefix+'/include', boost+'/include',], library_dirs = [prefix+'/lib', boost+'/lib',], libraries = ['pEpEngine', 'boost_python-mt', 'boost_locale-mt',], + extra_compile_args = ['-O0', '-g',], ) setup( diff --git a/src/message.cc b/src/message.cc index 091cfcb..43d5683 100644 --- a/src/message.cc +++ b/src/message.cc @@ -46,10 +46,9 @@ namespace pEp { } Message::Blob::Blob(const Message::Blob& second) : - _bl(bloblist_dup(second._bl)), part_of_chain(false) + _bl(second._bl), part_of_chain(true) { - if (!_bl) - throw bad_alloc(); + } Message::Blob::~Blob() diff --git a/src/message_api.cc b/src/message_api.cc index dd72986..a250a9a 100644 --- a/src/message_api.cc +++ b/src/message_api.cc @@ -17,7 +17,8 @@ namespace pEp { PEP_encrypt_flags_t _flags = (PEP_encrypt_flags_t) flags; message *_dst = NULL; - PEP_STATUS status = encrypt_message(session, src, _extra, &_dst, + message *_src = src; + PEP_STATUS status = encrypt_message(session, _src, _extra, &_dst, _enc_format, _flags); free_stringlist(_extra); _throw_status(status);