savoirfairelinux issueshttps://git.jami.net/groups/savoirfairelinux/-/issues2021-05-28T21:09:24Zhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/441ASAN: segv in video_rtp2021-05-28T21:09:24ZSébastien BlinASAN: segv in video_rtpVia IRC
```
[1613570498.245|27869|manager.cpp :1683 ] [call:4730700885720014] Remove local audio
[1613570498.246|27869|ringbufferpool.cpp:263 ] Unbind call 4730700885720014 from all bound calls
[1613570498.246|27869|a...Via IRC
```
[1613570498.245|27869|manager.cpp :1683 ] [call:4730700885720014] Remove local audio
[1613570498.246|27869|ringbufferpool.cpp:263 ] Unbind call 4730700885720014 from all bound calls
[1613570498.246|27869|audiostream.cpp :147 ] Destroying stream with device alsa_output.pci-0000_00_1b.0.analog-stereo.echo-cancel
[1613570498.246|27869|sipcall.cpp :444 ] [call:4730700885720014] Terminate SIP session
[1613570498.251|27869|sip_utils.cpp :210 ] Add header to SIP message: "User-Agent: Jami Daemon 9.9.0 (linux)"
[1613570498.254|27869|sipcall.cpp :1298 ] [call:4730700885720014] stopping all medias
AddressSanitizer:DEADLYSIGNAL
=================================================================
==27869==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000038 (pc 0x5644c790eadf bp 0x7fffa6e501f0 sp 0x7fffa6e50170 T0)
==27869==The signal is caused by a READ memory access.
==27869==Hint: address points to the zero page.
Dropped 54 packets with high delay
Dropped 28 packets with high delay
Dropped 62 packets with high delay
[1613570514.887|27870|upnp_context.cpp :506 ] Protocol status [PUPNP] has valid IGD(s) YES
[1613570514.889|27870|upnp_context.cpp :541 ] Mapping status [TCP] - overall 4: 4 open (4 ready + 0 in use), 0 pending, 0 in-progress, 0 failed
[1613570514.891|27870|upnp_context.cpp :541 ] Mapping status [UDP] - overall 9: 9 open (8 ready + 1 in use), 0 pending, 0 in-progress, 0 failed
#0 0x5644c790eade in jami::MediaDecoder::getStream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const daemon/src/media/media_decoder.cpp:731
#1 0x5644c7ae1eaf in jami::video::VideoReceiveThread::getInfo() const daemon/src/media/video/video_receive_thread.cpp:265
#2 0x5644c7a1cd82 in jami::video::VideoRtpSession::deinitRecorder(std::shared_ptr<jami::MediaRecorder>&) daemon/src/media/video/video_rtp_session.cpp:672
#3 0x5644c78d036f in jami::SIPCall::stopAllMedia() daemon/src/sip/sipcall.cpp:1300
#4 0x5644c78d05fb in jami::SIPCall::hangup(int) daemon/src/sip/sipcall.cpp:564
#5 0x5644c78678d5 in jami::Manager::hangupCall(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) daemon/src/manager.cpp:1063
#6 0x5644c7825d57 in DBusCallManager::hangUp(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) daemon/bin/dbus/dbuscallmanager.cpp:56
#7 0x5644c7825d57 in cx::ring::Ring::CallManager_adaptor::_hangUp_stub(DBus::CallMessage const&) daemon/bin/dbus/dbuscallmanager.adaptor.h:863
#8 0x5644c7822ada in DBus::Callback<cx::ring::Ring::CallManager_adaptor, DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const daemon/contrib/x86_64-linux-gnu/include/dbus-c++-1/dbus-c++/util.h:283
#9 0x5644c7847274 in DBus::Slot<DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const ../include/dbus-c++/util.h:252
#10 0x5644c7847274 in DBus::InterfaceAdaptor::dispatch_method(DBus::CallMessage const&) daemon/contrib/native/dbus-cpp/src/interface.cpp:64
#11 0x5644c784ee04 in DBus::ObjectAdaptor::handle_message(DBus::Message const&) daemon/contrib/native/dbus-cpp/src/object.cpp:220
#12 0x5644c784c6e5 in DBus::ObjectAdaptor::Private::message_function_stub(DBusConnection*, DBusMessage*, void*) daemon/contrib/native/dbus-cpp/src/object.cpp:92
#13 0x7fbac08b4bac (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x26bac)
#14 0x7fbac08a5713 in dbus_connection_dispatch (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x17713)
#15 0x5644c7842aaf in DBus::Connection::Private::do_dispatch() daemon/contrib/native/dbus-cpp/src/connection.cpp:132
#16 0x5644c7844b59 in DBus::Dispatcher::dispatch_pending(std::__cxx11::list<DBus::Connection::Private*, std::allocator<DBus::Connection::Private*> >&) daemon/contrib/native/dbus-cpp/src/dispatcher.cpp:236
#17 0x5644c7844c5c in DBus::Dispatcher::dispatch_pending() daemon/contrib/native/dbus-cpp/src/dispatcher.cpp:198
#18 0x5644c784612e in DBus::BusDispatcher::do_iteration() daemon/contrib/native/dbus-cpp/src/eventloop-integration.cpp:147
#19 0x5644c784612e in DBus::BusDispatcher::enter() daemon/contrib/native/dbus-cpp/src/eventloop-integration.cpp:99
#20 0x5644c77f9c8e in DBusClient::event_loop() daemon/bin/dbus/dbusclient.cpp:272
#21 0x5644c77ec76e in main daemon/bin/main.cpp:222
#22 0x7fbabf28c09a in __libc_start_main ../csu/libc-start.c:308
#23 0x5644c77f9479 (/usr/lib/ring/dring+0x158479)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV daemon/src/media/media_decoder.cpp:731 in jami::MediaDecoder::getStream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const
==27869==ABORTING
```https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/440ASAN crash on double-free in NameDirectory2021-02-19T23:09:21ZSébastien BlinASAN crash on double-free in NameDirectory# Scenario
+ Search a username
+ while the search is in progress, cut the client (will finish the daemon)
# Current result
```
[1613568185.981|27014|sipvoiplink.cpp :709 ] Shutdown SIPVoIPLink@0x61900000f080...
[1613568185.981|2701...# Scenario
+ Search a username
+ while the search is in progress, cut the client (will finish the daemon)
# Current result
```
[1613568185.981|27014|sipvoiplink.cpp :709 ] Shutdown SIPVoIPLink@0x61900000f080...
[1613568185.981|27014|siptransport.cpp :196 ] ~SipTransportBroker@0x60d0000002b0
[1613568185.981|27014|siptransport.cpp :203 ] destroying SipTransportBroker@0x60d0000002b0
[1613568186.445|27014|sipvoiplink.cpp :726 ] SIPVoIPLink@0x61900000f080 is shutdown
[1613568186.449|27014|smartools.cpp :67 ] Stop SmartInfo
[1613568186.452|27014|namedirectory.cpp :166 ] Address lookup for XXXXXX failed with code=0
=================================================================
==27014==ERROR: AddressSanitizer: attempting double-free on 0x60600010da20 in thread T0:
[1613568187.609|27015|pupnp.cpp :1268 ] PUPnP: Found 0 allocated mappings on IGD 192.168.122.1
[1613568187.609|27015|upnp_context.cpp :741 ] Send request for pending mapping JAMI-UDP:21867 to IGD 192.168.122.1:0
[1613568187.609|27015|upnp_context.cpp :370 ] Request mapping JAMI-UDP:21867 using protocol [UPNP]
[1613568187.609|27015|mapping.cpp :155 ] Changed mapping JAMI-UDP:21867 state from PENDING to IN_PROGRESS
[1613568187.609|27015|pupnp.cpp :446 ] PUPnP: Attempting to open port JAMI-UDP:21867
[1613568187.610|27015|pupnp.cpp :516 ] PUPnP: Sent request to open port JAMI-UDP:21867
[1613568187.610|27015|upnp_context.cpp :506 ] Protocol status [PUPNP] has valid IGD(s) YES
[1613568187.610|27015|upnp_context.cpp :541 ] Mapping status [TCP] - overall 0: 0 open (0 ready + 0 in use), 0 pending, 0 in-progress, 0 failed
[1613568187.610|27015|upnp_context.cpp :418 ] Provision 4 new mappings of type [TCP]
[1613568187.610|27015|upnp_context.cpp :370 ] Request mapping JAMI-TCP:13587 using protocol [UPNP]
[1613568187.610|27015|mapping.cpp :155 ] Changed mapping JAMI-TCP:13587 state from PENDING to IN_PROGRESS
[1613568187.610|27015|pupnp.cpp :446 ] PUPnP: Attempting to open port JAMI-TCP:13587
#0 0x7f663f5c7aa0 in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xebaa0)
#1 0x55f876b1055d in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::deallocate(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*, unsigned long) /usr/include/c++/8/ext/new_allocator.h:125
#2 0x55f876b1055d in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > > >::deallocate(std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >&, std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:462
#3 0x55f876b1055d in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_put_node(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:603
#4 0x55f876b1055d in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_drop_node(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:670
#5 0x55f876b1055d in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:1874
#6 0x55f876b1053e in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:1872
#7 0x55f876b1053e in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:1872
#8 0x55f876b10779 in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::~_Rb_tree() /usr/include/c++/8/bits/stl_tree.h:1872
#9 0x55f876b10779 in std::map<unsigned int, std::shared_ptr<dht::http::Request>, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::~map() /usr/include/c++/8/bits/stl_map.h:300
#10 0x55f876b10779 in jami::NameDirectory::~NameDirectory() daemon/src/jamidht/namedirectory.h:49
#11 0x55f876b10779 in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>::~pair() /usr/include/c++/8/bits/stl_pair.h:208
#12 0x55f876b10779 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>*) /usr/include/c++/8/ext/new_allocator.h:140
#13 0x55f876b10779 in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>*) /usr/include/c++/8/bits/alloc_traits.h:487
#14 0x55f876b10779 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >*) /usr/include/c++/8/bits/stl_tree.h:661
#15 0x55f876b10779 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::_M_drop_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >*) /usr/include/c++/8/bits/stl_tree.h:669
#16 0x55f876b10779 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >*) /usr/include/c++/8/bits/stl_tree.h:1874
#17 0x7f663de31d8b in __run_exit_handlers /build/glibc-vjB4T1/glibc-2.28/stdlib/exit.c:108
#18 0x7f663de31eb9 in __GI_exit /build/glibc-vjB4T1/glibc-2.28/stdlib/exit.c:139
#19 0x7f663de1c0a1 in __libc_start_main ../csu/libc-start.c:342
#20 0x55f87694d479 (/usr/lib/ring/dring+0x158479)
0x60600010da20 is located 0 bytes inside of 56-byte region [0x60600010da20,0x60600010da58)
freed by thread T0 here:
#0 0x7f663f5c7aa0 in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xebaa0)
#1 0x55f876b10bf7 in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::erase(unsigned int const&) /usr/include/c++/8/ext/new_allocator.h:125
previously allocated by thread T0 here:
#0 0x7f663f5c6d30 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead30)
#1 0x55f876b11876 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::allocate(unsigned long, void const*) /usr/include/c++/8/ext/new_allocator.h:111
#2 0x55f876b11876 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >&, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:436
#3 0x55f876b11876 in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_get_node() /usr/include/c++/8/bits/stl_tree.h:599
#4 0x55f876b11876 in std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >* std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<unsigned int const&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<unsigned int const&>&&, std::tuple<>&&) /usr/include/c++/8/bits/stl_tree.h:653
#5 0x55f876b11876 in std::_Rb_tree_iterator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<unsigned int const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::piecewise_construct_t const&, std::tuple<unsigned int const&>&&, std::tuple<>&&) /usr/include/c++/8/bits/stl_tree.h:2414
#6 0x55f876b11876 in std::map<unsigned int, std::shared_ptr<dht::http::Request>, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::operator[](unsigned int const&) /usr/include/c++/8/bits/stl_map.h:499
#7 0x61500002330f (<unknown module>)
SUMMARY: AddressSanitizer: double-free (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xebaa0) in operator delete(void*)
==27014==ABORTING
```Sébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/293Swarm: composing status changes broken2021-02-18T15:24:02ZSébastien BlinSwarm: composing status changes broken# Scenario
+ Alice (Android) Bob (client-qt) both support swarm
+ Bob starts composing
# Expected
Alice(android) should see a composing status changed
# Current result
Bob seems to send an incorrect status changes (cf if <conversat...# Scenario
+ Alice (Android) Bob (client-qt) both support swarm
+ Bob starts composing
# Expected
Alice(android) should see a composing status changed
# Current result
Bob seems to send an incorrect status changes (cf if <conversation> is in getMessageDisplayed() (daemon side). the client should send a composing status with "to = swarm:uri"Swarm-chatAlbert Babí OllerKateryna KostiukAlbert Babí Oller2021-03-03https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/292Swarm: Compat with old clients broken for calls, file transfer & composing st...2021-02-18T15:24:03ZSébastien BlinSwarm: Compat with old clients broken for calls, file transfer & composing statusSwarm-chatAlbert Babí OllerAlbert Babí Oller2021-03-03https://git.jami.net/savoirfairelinux/jami-libclient/-/issues/459Swarm:Compat with Non-Swarm clients, remove swarm must remove messages2021-02-19T15:41:23ZSébastien BlinSwarm:Compat with Non-Swarm clients, remove swarm must remove messages# Scenario
+ Alice (client-qt, swarm) adds Bob (non-swarm client)
+ Alice will create a swarm that should be shown
+ Bob accepts the invite
+ Because Bob is a non-swarm compatible member, the swarm is deleted, but contact still present
...# Scenario
+ Alice (client-qt, swarm) adds Bob (non-swarm client)
+ Alice will create a swarm that should be shown
+ Bob accepts the invite
+ Because Bob is a non-swarm compatible member, the swarm is deleted, but contact still present
# Current result
When conversation is removed, old messages are still there.
# Expected
Messages from swarm should be deletedSwarm-chatKateryna KostiukKateryna Kostiuk2021-03-03https://git.jami.net/savoirfairelinux/jami-client-ios/-/issues/118Conference: Implement conference layout2021-12-29T19:09:39ZSébastien BlinConference: Implement conference layoutBackloghttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/439Conference: Show remote recording indication for non-host in a conference2021-12-29T19:11:48ZSébastien BlinConference: Show remote recording indication for non-host in a conference# Scenario
+ Start a conf A(host),B,C
+ B start to record
# Current result
only A,B have the remote recording indication
# Expected
C show the remote recording# Scenario
+ Start a conf A(host),B,C
+ B start to record
# Current result
only A,B have the remote recording indication
# Expected
C show the remote recordingBackloghttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/437[To test]Swarm: Still some "could not fetch commit..."2021-03-02T15:48:33ZSébastien Blin[To test]Swarm: Still some "could not fetch commit..."Sometimes, when android sends a message, the message is not received by the other peer, with "could not fetch commit..". This needs some investigation. all messages should pass directlySometimes, when android sends a message, the message is not received by the other peer, with "could not fetch commit..". This needs some investigation. all messages should pass directlySwarm-chatSébastien BlinSébastien Blin2021-03-03https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/291Swarm: Compat with Non-Swarm clients, messages kept?2021-02-17T16:02:35ZSébastien BlinSwarm: Compat with Non-Swarm clients, messages kept?# Scenario
+ Alice (client-qt, swarm) adds Bob (non-swarm client)
+ Alice will create a swarm that should be shown
+ Bob accepts the invite
+ Because Bob is a non-swarm compatible member, the swarm is deleted, but contact still present
...# Scenario
+ Alice (client-qt, swarm) adds Bob (non-swarm client)
+ Alice will create a swarm that should be shown
+ Bob accepts the invite
+ Because Bob is a non-swarm compatible member, the swarm is deleted, but contact still present
# Current result
When conversation is removed, old messages are still there.
# Expected
Messages from swarm should be deletedSwarm-chatAlbert Babí OllerAlbert Babí Oller2021-03-03https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/290Swarm: [ToCheck]Sync multi-device2021-03-12T21:01:02ZSébastien BlinSwarm: [ToCheck]Sync multi-deviceCheck if two devices for same account is syncing and that client-qt correctly handle signals (message receives, contact/conversation added/removed from other device)Check if two devices for same account is syncing and that client-qt correctly handle signals (message receives, contact/conversation added/removed from other device)Sébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/289Swarm: Fix some incorrect status for file transfer2021-03-16T15:29:50ZSébastien BlinSwarm: Fix some incorrect status for file transferSometimes, when transferring a file, the status stays "connecting" even if the transfer is done and finished.Sometimes, when transferring a file, the status stays "connecting" even if the transfer is done and finished.Kateryna KostiukKateryna Kostiuk2021-03-03https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/288Investigate: Scroll is too sensitive in smartlist & settings2021-04-07T19:49:00ZSébastien BlinInvestigate: Scroll is too sensitive in smartlist & settingscurrently not possible to do for settings (ScrollView)currently not possible to do for settings (ScrollView)https://git.jami.net/savoirfairelinux/jami-client-ios/-/issues/117iOS: Conference. Show displayname or username instead of hash when available2021-03-10T15:49:27ZSébastien BliniOS: Conference. Show displayname or username instead of hash when availableKateryna KostiukKateryna Kostiukhttps://git.jami.net/savoirfairelinux/jami-client-macos/-/issues/274Mac OS: conference layout. Fix mute status (cf client-qt)2021-02-19T23:09:28ZSébastien BlinMac OS: conference layout. Fix mute status (cf client-qt)Kateryna KostiukKateryna Kostiukhttps://git.jami.net/savoirfairelinux/jami-client-macos/-/issues/273Mac OS: conference - follow design change (cf client-qt)2021-03-10T15:49:01ZSébastien BlinMac OS: conference - follow design change (cf client-qt)Also: note that https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/31 should be includedAlso: note that https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/31 should be includedKateryna KostiukKateryna Kostiukhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/436Crash in PUPnP and UPnPContext classes2021-05-25T20:52:40ZMohamed ChibaniCrash in PUPnP and UPnPContext classesOccurs when closing Jami. See callstack:
```
[Thread 0x7fffa7fff640 (LWP 85247) exited]
[1613437562.277|19688|pupnp.cpp :165 ] PUPnP: Destroying instance 0x7fffac0010f0
malloc_consolidate(): unaligned fastbin chunk detected
--T...Occurs when closing Jami. See callstack:
```
[Thread 0x7fffa7fff640 (LWP 85247) exited]
[1613437562.277|19688|pupnp.cpp :165 ] PUPnP: Destroying instance 0x7fffac0010f0
malloc_consolidate(): unaligned fastbin chunk detected
--Type <RET> for more, q to quit, c to continue without paging--
Thread 1 "dring" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:49
49 ../sysdeps/unix/sysv/linux/raise.c: Aucun fichier ou dossier de ce type.
(gdb) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:49
#1 0x00007ffff6e40864 in __GI_abort () at abort.c:79
#2 0x00007ffff6ea3af6 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff6fcb128 "%s\n") at ../sysdeps/posix/libc_fatal.c:155
#3 0x00007ffff6eac46c in malloc_printerr (str=str@entry=0x7ffff6fcd4b8 "malloc_consolidate(): unaligned fastbin chunk detected") at malloc.c:5389
#4 0x00007ffff6eadb4c in malloc_consolidate (av=av@entry=0x7ffff6ffdba0 <main_arena>) at malloc.c:4509
#5 0x00007ffff6eaf023 in _int_malloc (av=av@entry=0x7ffff6ffdba0 <main_arena>, bytes=bytes@entry=2000) at malloc.c:3727
#6 0x00007ffff6eb1721 in GI_libc_malloc (bytes=2000) at malloc.c:3086
#7 0x00007ffff7d7dbef in ?? () from /lib/x86_64-linux-gnu/libupnp.so.13
#8 0x0000555555b04d85 in jami::upnp::PUPnP::actionDeletePortMappingsByDesc (this=0x7fffac0010f0, igd=..., description="JAMI") at pupnp.cpp:1304
#9 0x0000555555b00eee in jami::upnp::PUPnP::removeAllLocalMappings (this=0x7fffac0010f0,
igd=std::shared_ptr<class jami::upnp::IGD> (use count 2, weak count 0) = {...}) at pupnp.cpp:608
#10 0x0000555555afe4e7 in jami::upnp::PUPnP::~PUPnP (this=0x7fffac0010f0, __in_chrg=<optimized out>) at pupnp.cpp:171
#11 0x00005555557ada9f in gnu_cxx::new_allocator<jami::upnp::PUPnP>::destroy<jami::upnp::PUPnP> (this=0x7fffac0010f0, p=0x7fffac0010f0)
at /usr/include/c++/10/ext/new_allocator.h:156
#12 0x00005555557ad99d in std::allocator_traits<std::allocator<jami::upnp::PUPnP> >::destroy<jami::upnp::PUPnP> (a=..., p=0x7fffac0010f0)
at /usr/include/c++/10/bits/alloc_traits.h:531
#13 0x00005555557ad4c1 in std::_Sp_counted_ptr_inplace<jami::upnp::PUPnP, std::allocator<jami::upnp::PUPnP>, (__gnu_cxx::_Lock_policy)2>::Mdispose
(this=0x7fffac0010e0) at /usr/include/c++/10/bits/shared_ptr_base.h:560
#14 0x00005555556986fb in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::Mrelease (this=0x7fffac0010e0)
at /usr/include/c++/10/bits/shared_ptr_base.h:158
#15 0x0000555555698283 in std::shared_count<(gnu_cxx::_Lock_policy)2>::~shared_count (this=0x7fffac002550, in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr_base.h:733
#16 0x000055555579d6fc in std::shared_ptr<jami::upnp::UPnPProtocol, (gnu_cxx::_Lock_policy)2>::~shared_ptr (this=0x7fffac002548,
in_chrg=<optimized out>) at /usr/include/c++/10/bits/shared_ptr_base.h:1183
#17 0x000055555579d71c in std::shared_ptr<jami::upnp::UPnPProtocol>::~shared_ptr (this=0x7fffac002548, __in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr.h:121
#18 0x00005555557ab022 in std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >::~pair (this=0x7fffac002540,
__in_chrg=<optimized out>) at /usr/include/c++/10/bits/stl_pair.h:211
#19 0x00005555557ab046 in gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::destroy<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > (this=0x7fffd80064c0,
p=0x7fffac002540) at /usr/include/c++/10/ext/new_allocator.h:156
#20 0x00005555557a9a87 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > > >::destroy<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > (a=...,
p=0x7fffac002540) at /usr/include/c++/10/bits/alloc_traits.h:531
#21 0x00005555557a6eb9 in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::Mdestroy_node (
this=0x7fffd80064c0, __p=0x7fffac002520) at /usr/include/c++/10/bits/stl_tree.h:646
#22 0x00005555557a3645 in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::Mdrop_node (
this=0x7fffd80064c0, __p=0x7fffac002520) at /usr/include/c++/10/bits/stl_tree.h:654
#23 0x00005555557a08fa in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocol--Type <RET> for more, q to quit, c to continue without paging--
Type>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::Merase (this=0x7fffd80064c0,
__x=0x7fffac002520) at /usr/include/c++/10/bits/stl_tree.h:1921
#24 0x000055555579e65c in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::~_Rb_tree (this=0x7fffd80064c0,
__in_chrg=<optimized out>) at /usr/include/c++/10/bits/stl_tree.h:991
#25 0x000055555579da1a in std::map<jami::upnp::NatProtocolType, std::shared_ptr<jami::upnp::UPnPProtocol>, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::~map (this=0x7fffd80064c0,
__in_chrg=<optimized out>) at /usr/include/c++/10/bits/stl_map.h:302
#26 0x00005555557901c1 in jami::upnp::UPnPContext::~UPnPContext (this=0x7fffd8006460, __in_chrg=<optimized out>) at upnp_context.cpp:47
#27 0x00005555557adb17 in gnu_cxx::new_allocator<jami::upnp::UPnPContext>::destroy<jami::upnp::UPnPContext> (this=0x7fffd8006460,
p=0x7fffd8006460) at /usr/include/c++/10/ext/new_allocator.h:156
#28 0x00005555557ada2d in std::allocator_traits<std::allocator<jami::upnp::UPnPContext> >::destroy<jami::upnp::UPnPContext> (a=...,
p=0x7fffd8006460) at /usr/include/c++/10/bits/alloc_traits.h:531
#29 0x00005555557ad811 in std::_Sp_counted_ptr_inplace<jami::upnp::UPnPContext, std::allocator<jami::upnp::UPnPContext>, (__gnu_cxx::_Lock_policy)2>::Mdispose (this=0x7fffd8006450) at /usr/include/c++/10/bits/shared_ptr_base.h:560
#30 0x00005555556986fb in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::Mrelease (this=0x7fffd8006450)
at /usr/include/c++/10/bits/shared_ptr_base.h:158
#31 0x0000555555698283 in std::shared_count<(gnu_cxx::_Lock_policy)2>::~shared_count (
this=0x555556c31bf8 <jami::upnp::UPnPContext::getUPnPContext()::context+8>, in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr_base.h:733
#32 0x000055555574413c in std::shared_ptr<jami::upnp::UPnPContext, (gnu_cxx::_Lock_policy)2>::~shared_ptr (
this=0x555556c31bf0 <jami::upnp::UPnPContext::getUPnPContext()::context>, in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr_base.h:1183
#33 0x000055555574415c in std::shared_ptr<jami::upnp::UPnPContext>::~shared_ptr (
this=0x555556c31bf0 <jami::upnp::UPnPContext::getUPnPContext()::context>, __in_chrg=<optimized out>) at /usr/include/c++/10/bits/shared_ptr.h:121
#34 0x00007ffff6e5ea57 in run_exit_handlers (status=0, listp=0x7ffff6ffd738 <exit_funcs>, run_list_atexit=run_list_atexit@entry=true,
run_dtors=run_dtors@entry=true) at exit.c:108
#35 0x00007ffff6e5ec00 in __GI_exit (status=<optimized out>) at exit.c:139
#36 0x00007ffff6e42cb9 in __libc_start_main (main=0x555555697bc3 <main(int, char**)>, argc=2, argv=0x7fffffffe038, init=<optimized out>,
```Mohamed ChibaniMohamed Chibanihttps://git.jami.net/savoirfairelinux/jami-project/-/issues/1183I can send messages even if there is no content2021-02-16T16:50:37ZHai78I can send messages even if there is no content(my English is poor)
OS: Trisquel GNU/Linux 9.0 Etiona
Jami version:"Together" 2021-02-05 23:59:22 UTC
I don't known if this is a bug but: If i press space in the message bar and then i press to send the message the message is sent. See...(my English is poor)
OS: Trisquel GNU/Linux 9.0 Etiona
Jami version:"Together" 2021-02-05 23:59:22 UTC
I don't known if this is a bug but: If i press space in the message bar and then i press to send the message the message is sent. See the screenshot (i don't known if you understand me :)![bug](/uploads/2c255295323765d40ae60dad365b2959/bug.png)https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/287[Pinephone]Unable to set / choose resolution for camera2022-01-07T20:54:25Zp1trson1[Pinephone]Unable to set / choose resolution for cameraPlease specify the following:
* OS: Arch Linux ARM on pinephone (https://github.com/dreemurrs-embedded/Pine64-Arch) (kernel 5.10.13-1-danctnix ) but I guess this is applicable for any PP distro using Phosh
* Jami version: client-qt (Jam...Please specify the following:
* OS: Arch Linux ARM on pinephone (https://github.com/dreemurrs-embedded/Pine64-Arch) (kernel 5.10.13-1-danctnix ) but I guess this is applicable for any PP distro using Phosh
* Jami version: client-qt (Jami 202102042313)
* What build you are using: https://github.com/savoirfairelinux/ring-project.git (see above)
## Steps to reproduce
- Can you reproduce the bug: at will
- Steps:
1.launch Jami qt client on pinephone
2. go to Audio and Video settings
3. Click resolution dropdown menu
- Actual result: only "1280x720" is available
- Expected result: it should either list some predefined resolutions or get the specs from camera and allow user to choose/test
## Additional information
question: where is jami getting this resolution from? is it hardcoded currently? see whole thread and especially:
https://forum.pine64.org/showthread.php?tid=13004&pid=89453#pid89453
NOTE: when I change the camera resolution (via media-ctl CLI) as per above thread to "1280x720" it works in Jami. But I'd like to test more and need support for all the possible resolutions
Screenshots![res_pp_jami](/uploads/b98640f983f51fa6d7bfdcd7ed4364d7/res_pp_jami.png)https://git.jami.net/savoirfairelinux/jami-project/-/issues/1182Notification visibility on Windows <102021-02-17T22:27:42Zxxx xxxNotification visibility on Windows <10Apparently in Windows 10 there is an area that permanently keeps your notifications. On Windows 7 (+Vista7/8?) there is only a temporary popup, and after that there is no way of knowing of new messages, except opening the main window.
T...Apparently in Windows 10 there is an area that permanently keeps your notifications. On Windows 7 (+Vista7/8?) there is only a temporary popup, and after that there is no way of knowing of new messages, except opening the main window.
The additional behavior I would expect is that the main window is being opened minimized to the task bar and flashing, but at the very least having a little red notification dot on the tray icon.https://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1250HELP S.O.S. JAMI UBUNTU 20.102021-02-13T11:56:46ZVERO JEAN-LUCveroniquejeanluc@lilo.orgHELP S.O.S. JAMI UBUNTU 20.10![JAMI_OLD_BOG_INSTALLATION](/uploads/7b021704e90f57375ca8db4de87cacae/JAMI_OLD_BOG_INSTALLATION.png)
Impossible de mettre à jour ni même d’installer à nouveau jami à partir de jami.net ?
Quelqu’un aurait-il une solution ? Merci
Voici ce...![JAMI_OLD_BOG_INSTALLATION](/uploads/7b021704e90f57375ca8db4de87cacae/JAMI_OLD_BOG_INSTALLATION.png)
Impossible de mettre à jour ni même d’installer à nouveau jami à partir de jami.net ?
Quelqu’un aurait-il une solution ? Merci
Voici ce que dit le terminal :
verojean@verojean:~$ sudo apt-get update && sudo apt-get install jami
Atteint :1 http://archive.ubuntu.com/ubuntu focal InRelease
Atteint :2 http://fr.archive.ubuntu.com/ubuntu focal InRelease
Atteint :3 http://fr.archive.ubuntu.com/ubuntu focal-updates InRelease
Atteint :4 http://fr.archive.ubuntu.com/ubuntu focal-backports InRelease
Réception de :5 http://security.ubuntu.com/ubuntu focal-security InRelease [109 kB]
Atteint :6 https://dl.jami.net/nightly/ubuntu_20.10 ring InRelease
109 ko réceptionnés en 2s (47,9 ko/s)
Lecture des listes de paquets… Fait
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l’impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n’ont pas encore
été créés ou ne sont pas sortis d’Incoming.
**L’information suivante devrait vous aider à résoudre la situation : **
Les paquets suivants contiennent des dépendances non satisfaites :
** jami : Dépend: libqt5core5a (>= 5.14.1) mais 5.12.8+dfsg-0ubuntu1 devra être installé**
** Dépend: jami-daemon (= 20210205.3.176eed9~dfsg1-1) mais ne sera pas installé**
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l’état ».
verojean@verojean:~$
Pour l’instant seul JAMI 20210105 est installé en secours, mais je ne vois que les identifiants et pas les noms d’utilisateurs…