summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeLines
...
| * | | Merge pull request #150 from fbriere/issue/88-mutex-lock-failedLuboš Doležel2020-02-23-2/+8
| |\ \ \ | | | | | | | | | | Prevent recursive locking of phone_users_mtx in add_phone_user()
| | * | | Prevent recursive locking of phone_users_mtx in add_phone_user()Frédéric Brière2019-07-03-2/+8
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | When encountering two users with the same contact name, attempting to differentiate them using USER_HOST(), a.k.a. get_ip_sip(), would result in EDEADLK since phone_users_mtx was already locked by add_phone_user(). Closes #88
| * | | Merge pull request #160 from 4-FLOSS-Free-Libre-Open-Source-Software/patch-2Luboš Doležel2020-02-23-1/+1
| |\ \ \ | | | | | | | | | | resolve nat_public_ip hostname for dyndns to work
| | * | | resolve nat_public_ip hostname for dyndns to work4-FLOSS-Free-Libre-Open-Source-Software2019-08-01-1/+1
| | |/ /
| * | | Merge pull request #166 from fbriere/issue/165-deadlocks-simpleLuboš Doležel2020-02-23-3/+1
| |\ \ \ | | | |/ | | |/| Simple fixes for two deadlocks
| | * | Make `t_phone::mutex_3way` recursive to avoid a deadlockFrédéric Brière2019-10-02-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `t_phone::mutex_3way` can be locked twice when hanging up a conference call: - `t_phone::cleanup_3way_state()` acquires a lock - `t_audio_session::stop_3way()` is called - `t_audio_session::get_peer_3way()` is called - `t_phone::get_3way_peer_line()` is called - which acquires another lock Making that mutex recursive is a simple way to work around this issue.
| | * | Remove duplicate mutex lock in `t_phone::end_call()`Frédéric Brière2019-10-02-2/+0
| | |/ | | | | | | | | | | | | A write lock on `lines_mtx` has already been acquired at the beginning of `end_call()`.
| * | Merge pull request #185 from 4-FLOSS-Free-Libre-Open-Source-Software/patch-3Luboš Doležel2020-02-23-1/+1
| |\ \ | | | | | | | | let gui set MAX_PTIME cutoff 80ms
| | * | let gui set MAX_PTIME cutoff 80ms4-FLOSS-Free-Libre-Open-Source-Software2020-01-21-1/+1
| | |/
| * | Update and fix Czech and Slovak translationsJose Riha2020-02-22-45/+134
| | |
| * | Run lupdate on lang filesJose Riha2020-02-21-274/+808
| | |
| * | Fix spelling errorsJose Riha2020-02-20-66/+66
| | |
| * | Merge pull request #188 from jose1711/sk_translationLuboš Doležel2020-02-20-0/+5819
| |\ \ | | | | | | | | Add Slovak translation
| | * | Add Slovak translationJose Riha2020-02-19-0/+5819
| | |/
| * / Fix typos in Czech translationJose Riha2020-02-19-23/+23
| |/
* | placeholderThomas Groman2019-12-06-0/+35
| |
* | added initial framework to hold jack codeThomas Groman2019-10-27-0/+44
|/
* Change the address of the manual until we have our own up and runningLubos Dolezel2019-06-17-1/+1
|
* Case insensivity in WWW-Authenticate headerJan Schlüter2019-04-08-1/+1
|
* audio: Fix parameter setting failure with alsa v1.1.7Palo Kisa2018-11-29-5/+3
|
* Update Russian translationglixx2018-10-11-87/+324
|
* Include <QRegExpValidator> explicitlyMichal Kubecek2018-06-06-1/+8
| | | | | | | Since Qt 5.11, generated ui_getprofilename.h no longer includes QHeaderView which breaks the chain that included qvalidator.h in getprofilename.cpp. As it feels rather fragile to rely on such indirect includes, let's include <QRegExpValidator> explicitly in each file using QRegExpValidator class.
* Fix spelling mistakePeter Colberg2018-03-27-1/+1
|
* Remove remaining bits of Qt 4 codeFrédéric Brière2018-02-10-32/+0
|
* Remove some code specific to Qt 4Frédéric Brière2018-02-10-4/+0
|
* Disambiguate reference to ::bind()Frédéric Brière2018-02-09-4/+4
| | | | | | There's a potential ambiguity between ::bind() and std::bind() if <functional> happens to be included beforehand (as is the case with libc++).
* bugfix: Signal name was omitted in selectLocalAddress() emitFrédéric Brière2018-02-09-1/+1
|
* Merge pull request #94 from gwozniak/masterLuboš Doležel2017-11-26-0/+53
|\ | | | | PAI Header option
| * PAI Header optionGrzegorz Woźniak2017-04-13-0/+53
| |
* | User-Determined User Busy (UDUB)Alexander Traud2017-11-26-2/+2
| | | | | | | | | | | | | | | | | | | | | | When you reject a call, either A. the forwarding rule for User-Busy kicks in, like an answering machine or another extension (of a personal secretary or a deputy). Or B. the caller hears normal ringing first, and then the busy tone. To allow case A, a SIP user-agent client (UAC) has to return the status User-Busy (486). The same should happen in case B, because the caller shall hear a busy tone on rejection. 486 is mandated for SIP clients in mobile phones by the GSMA. Furthermore, other SIP-client creators give a 486 in that case as well; I tested Acrobits, Atlinks, Counterpath, Gigaset, Grandstream, RTX, Snom, Yealink, and Vtech. Before this change, twinkle rejected a call with the SIP-Status 603. The class 6xx requires that *all* other registered phones stop to ring. Furthermore, some SIP user-agent servers (UAS) follow RFC 3398 and map a status 603 to the cause-code 21, which is mapped back to status 403 (Forbidden). Cisco and Digium Asterisk do this. For example in Asterisk, after you rejected the call in twinkle, the caller did not get 603 or 486, but 403. However, in case of 403, the original caller is allowed to re-try the call setup. For example, I have a Nokia Symbian/S60 based phone which tries via IPv4 first, then after it received the 403, that phone tries again via IPv6. Consequently, a user of twinkle had to reject the call twice when 603 was returned.
* | Fix crash in parsing pending message countLubos Dolezel2017-11-15-2/+6
| |
* | Fix DTMF key 3 being sent twice (resolves #95)Lubos Dolezel2017-04-28-1/+0
|/
* Update twinkle_de.tsomni62017-03-09-1/+1
|
* Small German translation updateEttore Atalan2016-11-04-212/+208
| | | I've updated the German translation file.
* Fix spelling mistakesPeter Colberg2016-10-28-9/+9
|
* Move (private) gui_cmd_call/show/hide() methods to their proper locationFrédéric Brière2016-10-05-38/+38
| | | | (This is just cut-and-paste, also removing some trailing whitespace.)
* Have --call/show/hide invoke methods in the GUI threadFrédéric Brière2016-10-05-6/+18
| | | | Fixes #82
* Merge pull request #79 from fbriere/bug/selectuserformLuboš Doležel2016-10-05-2/+1
|\ | | | | Fix two issues with SelectUserForm
| * List users in forward order in SelectUserForm::show()Frédéric Brière2016-10-03-1/+1
| |
| * Fix double incrementation in SelectUserForm::validate()Frédéric Brière2016-10-03-1/+0
| |
* | Merge pull request #80 from fbriere/bug/number-conversion-multipleLuboš Doležel2016-10-05-3/+3
|\ \ | | | | | | Fix two issues with multiple number conversion rules in UserProfileForm
| * | Display number conversions in forward order for UserProfileFormFrédéric Brière2016-10-03-1/+1
| | |
| * | Actually iterate over rows in UserProfileForm::get_number_conversions()Frédéric Brière2016-10-03-2/+2
| |/
* | Merge pull request #78 from fbriere/issue/73-freeze-on-xferLuboš Doležel2016-10-05-1/+40
|\ \ | | | | | | Skip over the mutex field when copying t_call_info data
| * | Skip over the mutex field when copying t_call_info dataFrédéric Brière2016-10-04-1/+40
| |/ | | | | | | | | | | | | | | | | | | | | | | t_line::get_call_info() returns a copy of a (locked) t_call_info; copying the mutex, aside from being undefined in POSIX, returns an unexpectedly locked copy, possibly resulting in a deadlock. This fix is pretty much a copy of the one applied to t_call_record in 38bb6b7, with an added check for self-assignment. Like its predecessor, it is still susceptible to deadlock, though (as unlikely as it may be). Fixes #73
* | Merge pull request #76 from fbriere/issue/25-fsf-old-addressLuboš Doležel2016-10-05-695/+347
|\ \ | | | | | | Replace (old) FSF postal address with URL in header files
| * | Replace (old) FSF postal address with URL in header filesFrédéric Brière2016-10-02-695/+347
| | | | | | | | | | | | | | | | | | Wording copied from https://www.gnu.org/licenses/gpl-howto.en.html Fixes #25, fixes #71
* | | Invoke "ask user to refer" from within the GUI threadFrédéric Brière2016-10-04-6/+23
| |/ |/| | | | | Fixes #74
* | Fix French spelling error: "carnet d'adresse" -> "carnet d'adresses"Frédéric Brière2016-10-03-28/+28
| | | | | | | | | | | | | | The correct French term for "address book" is "carnet d'adresses", as documented in the following term record: http://www.gdt.oqlf.gouv.qc.ca/ficheOqlf.aspx?Id_Fiche=8365993
* | Add French translation for contact deletion confirmation promptFrédéric Brière2016-10-03-0/+8
|/ | | | | | The confirmation prompt when deleting a contact from the local address book (added in 57dc032) contains two new translatable strings; this commit provides their French translation.