{"object_kind":"push","event_name":"push","before":"3b1857f34c16470f35b9a7952b8dc84dde47cbe2","after":"bdfa6c5fbfddeb33d105703f9be1de7a80bedafe","ref":"refs/heads/master","ref_protected":true,"checkout_sha":"bdfa6c5fbfddeb33d105703f9be1de7a80bedafe","message":null,"user_id":3060,"user_name":"Wim Taymans","user_username":"wtaymans","user_email":"","user_avatar":"https://secure.gravatar.com/avatar/1ca1bed246cb9b95b7ead6d6be96bb09f0c112953140c8bb38b41aedf4465270?s=80&d=identicon","project_id":4753,"project":{"id":4753,"name":"pipewire","description":"Multimedia processing graphs","web_url":"https://gitlab.freedesktop.org/pipewire/pipewire","avatar_url":"https://gitlab.freedesktop.org/uploads/-/system/project/avatar/4753/pipewire.png","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","namespace":"PipeWire","visibility_level":20,"path_with_namespace":"pipewire/pipewire","default_branch":"master","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git"},"commits":[{"id":"018d78d1bb54fda7c35f70d1577842733bbcd3a2","message":"bluez5: mm: drop calls that reached the terminated state\n\nThe ModemManager backend keeps a struct call for every org.freedesktop.\nModemManager1.Call object it has seen. MMCallState is translated to the\nCLCC state by mm_state_to_clcc(), which returns -1 for\nMM_CALL_STATE_TERMINATED. Both callers only log that the state is\nunsupported and keep the call in the list with its last known state,\ne.g. CLCC_INCOMING.\n\nModemManager does not delete call objects on its own, this is left to\nthe telephony client. If the client does not do it (or if it was not\nrunning when the call ended), no CallDeleted signal is emitted and the\nterminated call stays in the list forever. Consequences:\n\n - mm_call_state_changed() is not run when the call ends, so the\n callsetup/call indicators keep their last value. On the next SLC\n setup AT+CIND? reports callsetup=1 and the HF signals an incoming\n call that does not exist,\n - AT+CLCC lists the terminated call, including the number, and\n mm_get_incoming_call_number() returns it for +CLIP.\n\nHandle MM_CALL_STATE_TERMINATED explicitly: remove the call from the\nlist and re-evaluate the indicators. Calls in MM_CALL_STATE_UNKNOWN are\nleft alone as before.\n\nSigned-off-by: Jan-Michael Brummer \n","title":"bluez5: mm: drop calls that reached the terminated state","timestamp":"2026-09-09T10:41:25+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/018d78d1bb54fda7c35f70d1577842733bbcd3a2","author":{"name":"Jan-Michael Brummer","email":"jan.brummer@tabos.org"},"added":[],"modified":["spa/plugins/bluez5/modemmanager.c"],"removed":[]},{"id":"bdfa6c5fbfddeb33d105703f9be1de7a80bedafe","message":"bluez5: mm: update the call indicators after all properties are parsed\n\nGetAll() returns the call properties as a dictionary, the order of the\nentries is not defined. mm_get_call_properties_reply() updates the\nindicators from within the parsing loop as soon as it sees the State\nproperty, so if State is parsed before Number the HF is told about an\nincoming call while call->number is still NULL and +CLIP/+CLCC report\nno number at all.\n\nRemember that the state changed and notify once the whole dictionary\nhas been parsed.\n\nSigned-off-by: Jan-Michael Brummer \n","title":"bluez5: mm: update the call indicators after all properties are parsed","timestamp":"2026-09-09T10:41:25+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/bdfa6c5fbfddeb33d105703f9be1de7a80bedafe","author":{"name":"Jan-Michael Brummer","email":"jan.brummer@tabos.org"},"added":[],"modified":["spa/plugins/bluez5/modemmanager.c"],"removed":[]}],"total_commits_count":2,"push_options":{},"repository":{"name":"pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","description":"Multimedia processing graphs","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","visibility_level":20}}