[Openlte-discuss] Use of invalidated iterators in enodeb user manager
An open source 3GPP LTE implementation.
Status: Alpha
Brought to you by:
bwojtowi
|
From: Damian J. <dam...@ti...> - 2015-09-11 11:32:17
|
Calling list::erase(iter) causes the invalidation of the iterator (all other iterators remain valid), so incrementing that iterator causes use-after-delete. This problem occurs 6 times in LTE_fdd_enb_user_mgr.cc at lines 440, 461, 478, 518, 547, 579. The proper way to obtain the iterator to the next list item is to use the iterator returned from erase() like this: iter = user_list.erase(iter); -- *Pozdrawiam / Best regards, * *Damian Jarek, Junior Software Engineer* *Tieto Poland Sp. z o.o.* Swobodna 1, 50-088 Wroclaw, Poland, www.tieto.com *Tieto Poland spółka z ograniczoną odpowiedzialnością z siedzibą w Szczecinie, ul. Malczewskiego 26. Zarejestrowana w Sądzie Rejonowym Szczecin-Centrum w Szczecinie, XIII Wydział Gospodarczy Krajowego Rejestru Sądowego pod numerem 0000124858. NIP: 8542085557. REGON: 812023656. Kapitał zakładowy: 4 271500 PLN* |