The cancel button of the paring dialog does not work during pairing a bluetooth keyboard

Bug #1845163 reported by Leon Liao
22
This bug affects 2 people
Affects Status Importance Assigned to Milestone
OEM Priority Project
New
Medium
Unassigned
gnome-control-center
Fix Released
Unknown
gnome-bluetooth (Ubuntu)
Fix Released
High
Unassigned

Bug Description

The cancel button of the paring dialog does not work during pairing a bluetooth keyboard.
The dialog can be cancel via press the "ESC" on the keyboard.
But, sometimes after around 1 minute, the gnome-control-center is crashed.

Reproduce steps:
1. On bluetooth tab in Settings, click a unpaired bluetooth keyboard
2. When the pairing XXX dialog show up
3. click the Cancel button (on the top left of the dialog).

Expected: the Cancel button is work. And, the pairing is canceled normally.
Actually: the Cancel button does not work. The pairing action can not be canceled via the button.

Ubuntu: 18.04
gnome-control-center: 1:3.28.2-0ubuntu0.18.04.3

Leon Liao (lihow731)
description: updated
Leon Liao (lihow731)
summary: - The cancel button of the paring dialog does not work during paring a
+ The cancel button of the paring dialog does not work during pairing a
bluetooth keyboard
description: updated
Will Cooke (willcooke)
tags: added: desktop-trello-import
Revision history for this message
Will Cooke (willcooke) wrote : Automatically added comment
tags: removed: desktop-trello-import
Rex Tsai (chihchun)
Changed in oem-priority:
importance: Undecided → High
Revision history for this message
Sebastien Bacher (seb128) wrote :
Download full text (5.9 KiB)

Backtrace after closing with esc on the normal keyboard and trying to open it again

Thread 1 "gnome-control-c" received signal SIGSEGV, Segmentation fault.
__tzstring_len (len=4, s=0x555557c9cdd9 "CEST") at tzset.c:90
90 tzset.c: Aucun fichier ou dossier de ce type.
(gdb) bt
#0 0x00007ffff632ed0b in __tzstring_len (len=4, s=0x555557c9cdd9 "CEST")
    at tzset.c:90
#1 0x00007ffff632ed0b in __tzstring (s=0x555557c9cdd9 "CEST") at tzset.c:121
#2 0x00007ffff6330cd0 in __tzfile_compute
    (timer=timer@entry=1570635708, use_localtime=use_localtime@entry=1, leap_correct=leap_correct@entry=0x7fffffffd5f0, leap_hit=leap_hit@entry=0x7fffffffd5ec, tp=tp@entry=0x7ffff644a240 <_tmbuf>) at tzfile.c:707
#3 0x00007ffff632faa1 in __tz_convert
    (timer=1570635708, use_localtime=use_localtime@entry=1, tp=tp@entry=0x7ffff644a240 <_tmbuf>) at tzset.c:580
#4 0x00007ffff632d4f8 in __GI_localtime (t=t@entry=0x7fffffffd630)
    at localtime.c:54
#5 0x00007ffff7c9d19e in g_log_writer_format_fields
    (log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, fields=fields@entry=0x7fffffffd810, n_fields=n_fields@entry=4, use_color=1)
    at ../../../glib/gmessages.c:2276
#6 0x00007ffff7c9e0c6 in g_log_writer_standard_streams
    (log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, fields=fields@entry=0x7fffffffd810, n_fields=n_fields@entry=4, user_data=user_data@entry=0x0)
    at ../../../glib/gmessages.c:2557
#7 0x00007ffff7c9e1c6 in g_log_writer_default
    (log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, fields=fields@entry=0x7fffffffd810, n_fields=n_fields@entry=4, user_data=user_data@entry=0x0)
--Type <RET> for more, q to quit, c to continue without paging--
    at ../../../glib/gmessages.c:2670
#8 0x00007ffff7c9c537 in g_log_structured_array
    (n_fields=4, fields=0x7fffffffd810, log_level=G_LOG_LEVEL_CRITICAL)
    at ../../../glib/gmessages.c:1925
#9 0x00007ffff7c9c537 in g_log_structured_array
    (log_level=G_LOG_LEVEL_CRITICAL, fields=0x7fffffffd810, n_fields=4)
    at ../../../glib/gmessages.c:1898
#10 0x00007ffff7c9c979 in g_log_default_handler
    (log_domain=log_domain@entry=0x7ffff7924047 "Gtk", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, message=message@entry=0x555557a4ac70 "gtk_entry_set_text: assertion 'GTK_IS_ENTRY (entry)' failed", unused_data=unused_data@entry=0x0)
    at ../../../glib/gmessages.c:3123
#11 0x00007ffff7c9cbac in g_logv
    (log_domain=0x7ffff7924047 "Gtk", log_level=G_LOG_LEVEL_CRITICAL, format=<optimised out>, args=args@entry=0x7fffffffd950) at ../../../glib/gmessages.c:1350
#12 0x00007ffff7c9cd93 in g_log
    (log_domain=log_domain@entry=0x7ffff7924047 "Gtk", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7ffff7ced713 "%s: assertion '%s' failed") at ../../../glib/gmessages.c:1415
#13 0x00007ffff7c9d58d in g_return_if_fail_warning
    (log_domain=log_domain@entry=0x7ffff7924047 "Gtk", pretty_function=pretty_function@entry=0x7ffff7953de0 <__func__.71767> "gtk_entry_set_text", expression=expression@entry=0x7ffff795240a "GTK_IS_ENTRY (entry)")
--Type <RET> for more, q to quit, c to continue without paging--
    at ../../../glib/gmessages.c:2771
#14 0x00007ffff76f68aa in gtk_entry_set_text
    (entry=<optim...

Read more...

Revision history for this message
Sebastien Bacher (seb128) wrote :

valgrind error log

==4950== Invalid read of size 4
==4950== at 0x600FE3B: bluetooth_pairing_dialog_get_mode (bluetooth-pairing-dialog.c:171)
==4950== by 0x60164D0: display_callback (bluetooth-settings-widget.c:526)
==4950== by 0x6005BCE: bluetooth_agent_display_passkey (bluetooth-agent.c:193)
==4950== by 0x6005BCE: handle_method_call (bluetooth-agent.c:495)
==4950== by 0x6005BCE: handle_method_call (bluetooth-agent.c:457)
==4950== by 0x497A053: call_in_idle_cb (gdbusconnection.c:4878)
==4950== by 0x4AF872D: ??? (in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.6200.0)
==4950== Address 0x14641e70 is 80 bytes inside an unallocated block of size 1,024 in arena "client"
==4950==
==4950== Invalid read of size 8
==4950== at 0x4F61175: gtk_widget_destroy (gtkwidget.c:4770)
==4950== by 0x60137F6: setup_pairing_dialog (bluetooth-settings-widget.c:236)
==4950== by 0x60164ED: display_callback (bluetooth-settings-widget.c:527)
==4950== by 0x6005BCE: bluetooth_agent_display_passkey (bluetooth-agent.c:193)
==4950== by 0x6005BCE: handle_method_call (bluetooth-agent.c:495)
==4950== by 0x6005BCE: handle_method_call (bluetooth-agent.c:457)
==4950== by 0x497A053: call_in_idle_cb (gdbusconnection.c:4878)
==4950== by 0x4AF872D: ??? (in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.6200.0)

Revision history for this message
Sebastien Bacher (seb128) wrote :

The issue is still there in 3.34, reported upstream now

https://gitlab.gnome.org/GNOME/gnome-bluetooth/issues/52

Changed in gnome-control-center (Ubuntu):
importance: Undecided → High
status: New → Triaged
Changed in gnome-control-center:
status: Unknown → New
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Note that 18.04 is still missing the fix for bug 1887910, which sounds related.

Rex Tsai (chihchun)
tags: added: oem-priority
Changed in gnome-control-center:
status: New → Fix Released
tags: added: hwe-bluetooth
affects: gnome-control-center (Ubuntu) → gnome-bluetooth (Ubuntu)
Changed in gnome-bluetooth (Ubuntu):
status: Triaged → Fix Committed
Revision history for this message
Grace Icay (gicay) wrote :

Hi @Sebastien,
May I know what gnome-bluetooth version is this fix available in? I ran updates on my system earlier and I'm still getting this issue.
Please see information below:

OS: Ubuntu 20.04
Gnome-control-center: 3.36.5
Gnome-shell: 3.36.4
Gnome bluetooth: 3.34.3

Thanks.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gnome-bluetooth - 3.34.5-1

---------------
gnome-bluetooth (3.34.5-1) experimental; urgency=medium

  * New upstream release:
    - the "Cancel" button works now when pairing keyboards
      (lp: #1845163)
  * New upstream release
  * debian/libgnome-bluetooth13.symbols:
    - updated symbols list for the new version
  * debian/control.in:
    - updated the build requirements for the new integration tests
  * debian/rules:
    - don't make the tests fail the build, those are new and depending on
      python-dbusmock features that are not available in Debian yet
    - use xvfb for the integration tests

 -- Sebastien Bacher <email address hidden> Tue, 23 Mar 2021 20:39:10 +0100

Changed in gnome-bluetooth (Ubuntu):
status: Fix Committed → Fix Released
Changed in oem-priority:
importance: High → Medium
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.