After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 732401 - Can't start - error about missing 'key09' key in 'org.gnome.robots'
Can't start - error about missing 'key09' key in 'org.gnome.robots'
Status: RESOLVED FIXED
Product: gnome-robots
Classification: Applications
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: Michael Catanzaro
gnome-robots-maint
Depends on:
Blocks:
 
 
Reported: 2014-06-28 23:54 UTC by Yosef Or Boczko
Modified: 2014-08-04 21:38 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix crash on startup (1.84 KB, patch)
2014-08-04 12:50 UTC, Michael Catanzaro
committed Details | Review
Fix crash due to typo in Hebrew translation (807 bytes, patch)
2014-08-04 21:36 UTC, Michael Catanzaro
committed Details | Review

Description Yosef Or Boczko 2014-06-28 23:54:04 UTC
When I try to run gnome-robots (build from git mater) I see this error:
(gnome-robots:19186): GLib-GIO-ERROR **: Settings schema 'org.gnome.robots' does not contain a key named 'key09'
Trace/breakpoint trap
Comment 1 Anders Jonsson 2014-07-28 20:56:41 UTC
I see this crash as well with gnome-robots built from master.

Readding the keys key09, key10 and key11 that were removed in the commit https://git.gnome.org/browse/gnome-robots/commit/?id=66a34214ea4a5cab3d9762e084c2968addf93aff to the file /data/org.gnome.robots.gschema.xml makes gnome-robots run again for me.

It is however unclear to me why this is needed as the code no longer contains any references to key09, key10 or key11.

CC:ing committer Michael Catanzaro.
Comment 2 Michael Catanzaro 2014-08-03 15:29:17 UTC
Sorry for missing this, Yosef.

(In reply to comment #1)
> It is however unclear to me why this is needed as the code no longer contains
> any references to key09, key10 or key11.

Yeah, I'm pretty confused too. I can't reproduce this and I don't see what I've missed, so could one of you please run robots in gdb and post a backtrace: https://wiki.gnome.org/Community/GettingInTouch/Bugzilla/GettingTraces/Details#gdb-not-yet-running
Comment 3 Yosef Or Boczko 2014-08-04 08:24:40 UTC
Program received signal SIGTRAP, Trace/breakpoint trap.
g_logv (log_domain=0x7ffff61afb38 "GLib-GIO", log_level=G_LOG_LEVEL_ERROR, format=<optimized out>, args=args@entry=0x7fffffffd708) at gmessages.c:1046
1046	gmessages.c: No such file or directory.
(gdb) bt
  • #0 g_logv
    at gmessages.c line 1046
  • #1 g_log
    at gmessages.c line 1079
  • #2 g_settings_schema_get_value
    at gsettingsschema.c line 951
  • #3 g_settings_schema_key_init
    at gsettingsschema.c line 1148
  • #4 g_settings_get_value
    at gsettings.c line 1091
  • #5 g_settings_get_int
    at gsettings.c line 1734
  • #6 load_keys
    at properties.c line 600
  • #7 load_properties
    at properties.c line 555
  • #8 activate
    at gnome-robots.c line 428
  • #9 g_closure_invoke
    at gclosure.c line 768
  • #10 signal_emit_unlocked_R
    at gsignal.c line 3553
  • #11 g_signal_emit_valist
    at gsignal.c line 3309
  • #12 g_signal_emit
    at gsignal.c line 3365
  • #13 g_application_activate
    at gapplication.c line 2011
  • #14 g_application_real_local_command_line
    at gapplication.c line 935
  • #15 g_application_run
    at gapplication.c line 2188
  • #16 __libc_start_main
    from /usr/lib/libc.so.6
  • #17 _start

Comment 4 Michael Catanzaro 2014-08-04 12:50:10 UTC
Created attachment 282432 [details] [review]
Fix crash on startup

The last three keys were removed in
66a34214ea4a5cab3d9762e084c2968addf93aff so we need to iterate 9 times
instead of 12.

Also, the current code is triggering -Waggressive-loop-optimizations so
let's fix the data type to avoid undefined behavior.

Can you please test to see that this is fixed, since I can't reproduce it? (Since undefined behavior is involved, maybe it only crashes with gcc 4.9; I am using gcc 4.8. Don't really care to investigate when the code is obviously wrong.)
Comment 5 Yosef Or Boczko 2014-08-04 12:52:49 UTC
With your patch:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff55cbac7 in vfprintf () from /usr/lib/libc.so.6
(gdb) bt
  • #0 vfprintf
    from /usr/lib/libc.so.6
  • #1 __vasprintf_chk
    from /usr/lib/libc.so.6
  • #2 vasprintf
    at /usr/include/bits/stdio2.h line 210
  • #3 g_vasprintf
    at gprintf.c line 316
  • #4 g_strdup_vprintf
    at gstrfuncs.c line 507
  • #5 g_strdup_printf
    at gstrfuncs.c line 533
  • #6 update_game_status
    at gnome-robots.c line 144
  • #7 start_new_game
    at game.c line 661
  • #8 activate
    at gnome-robots.c line 447
  • #9 g_closure_invoke
    at gclosure.c line 768
  • #10 signal_emit_unlocked_R
    at gsignal.c line 3553
  • #11 g_signal_emit_valist
    at gsignal.c line 3309
  • #12 g_signal_emit
    at gsignal.c line 3365
  • #13 g_application_activate
    at gapplication.c line 2011
  • #14 g_application_real_local_command_line
    at gapplication.c line 935
  • #15 g_application_run
    at gapplication.c line 2188
  • #16 __libc_start_main
    from /usr/lib/libc.so.6
  • #17 _start

Comment 6 Anders Jonsson 2014-08-04 13:12:32 UTC
(In reply to comment #4)
> Created an attachment (id=282432) [details] [review]
> Fix crash on startup

That patch fixes the crash for me. The game starts without problems now.
Comment 7 Michael Catanzaro 2014-08-04 21:36:32 UTC
Created attachment 282483 [details] [review]
Fix crash due to typo in Hebrew translation
Comment 8 Michael Catanzaro 2014-08-04 21:38:20 UTC
Should all be working now, thanks.

Attachment 282432 [details] pushed as 0895adc - Fix crash on startup
Attachment 282483 [details] pushed as 743056a - Fix crash due to typo in Hebrew translation