Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
F
folks
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 85
    • Issues 85
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 1
    • Merge Requests 1
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • GNOME
  • folks
  • Issues
  • #101

Closed
Open
Opened Feb 28, 2019 by Christian Stadelmann@genodeftest

Invalid read of size 4 in folks_potential_match_potential_match

Steps to reproduce:

  1. start gnome-contacts in valgrind using $ G_DEBUG=gc-friendly G_SLICE=always-malloc,debug-blocks /usr/bin/valgrind --track-origins=yes --vgdb=full --vgdb-error=0 /usr/bin/gnome-contacts
  2. attach gdb to it using $ gdb /usr/bin/gnome-contacts
  3. in gdb, attach to vgdb by executing (gdb) target remote | vgdb followed by (gdb) continue
  4. wait for the gnome-contacts window to appear
  5. click any contact

What happens:

==20356== Invalid read of size 4
==20356==    at 0x48C2003: _folks_potential_match_matches (potential-match.c:2168)
==20356==    by 0x48C2003: _folks_potential_match_jaro_dist (potential-match.c:1890)
==20356==    by 0x48C268E: _folks_potential_match_look_alike_or_identical (potential-match.c:1715)
==20356==    by 0x48C318F: _folks_potential_match_name_similarity (potential-match.c:685)
==20356==    by 0x48C318F: folks_potential_match_potential_match (potential-match.c:516)
==20356==    by 0x48B60A6: folks_individual_aggregator_get_potential_matches (individual-aggregator.c:2244)
==20356==    by 0x1366AF: contacts_contact_pane_show_contact_sheet (contacts-contact-pane.vala:128)
==20356==    by 0x149A24: contacts_window_set_shown_contact (contacts-window.vala:281)
==20356==    by 0x14A114: contacts_window_list_pane_selection_changed_cb (contacts-window.vala:362)
==20356==    by 0x14A114: _contacts_window_list_pane_selection_changed_cb_contacts_list_pane_selection_changed (contacts-window.vala:168)
==20356==    by 0x49D73DC: g_closure_invoke (gclosure.c:810)
==20356==    by 0x49EA982: signal_emit_unlocked_R (gsignal.c:3635)
==20356==    by 0x49F3AA9: g_signal_emit_valist (gsignal.c:3391)
==20356==    by 0x49F40A2: g_signal_emit (gsignal.c:3447)
==20356==    by 0x49D73DC: g_closure_invoke (gclosure.c:810)
==20356==  Address 0x2017aff4 is 0 bytes after a block of size 68 alloc'd
==20356==    at 0x483AB1A: calloc (vg_replace_malloc.c:762)
==20356==    by 0x4A70E1D: g_malloc0 (gmem.c:129)
==20356==    by 0x48C23EF: _folks_potential_match_strip_string (potential-match.c:2078)
==20356==    by 0x48C265F: _folks_potential_match_look_alike_or_identical (potential-match.c:1702)
==20356==    by 0x48C318F: _folks_potential_match_name_similarity (potential-match.c:685)
==20356==    by 0x48C318F: folks_potential_match_potential_match (potential-match.c:516)
==20356==    by 0x48B60A6: folks_individual_aggregator_get_potential_matches (individual-aggregator.c:2244)
==20356==    by 0x1366AF: contacts_contact_pane_show_contact_sheet (contacts-contact-pane.vala:128)
==20356==    by 0x149A24: contacts_window_set_shown_contact (contacts-window.vala:281)
==20356==    by 0x14A114: contacts_window_list_pane_selection_changed_cb (contacts-window.vala:362)
==20356==    by 0x14A114: _contacts_window_list_pane_selection_changed_cb_contacts_list_pane_selection_changed (contacts-window.vala:168)
==20356==    by 0x49D73DC: g_closure_invoke (gclosure.c:810)
==20356==    by 0x49EA982: signal_emit_unlocked_R (gsignal.c:3635)
==20356==    by 0x49F3AA9: g_signal_emit_valist (gsignal.c:3391)

See also the attached backtrace generated from (gdb) bt and (gdb) t a a bt full.

What should happen: No "Invalid read of size 4".

Additional information: This issue happens several times in a row with the same backtrace.

Installed software versions: folks-0.11.4-8.fc29.x86_64 gnome-contacts-3.30.2-1.fc29.x86_64 glib2-2.58.3-1.fc29.x86_64

Edited Feb 28, 2019 by Christian Stadelmann
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: GNOME/folks#101