after installing the version with debug symbols in trusty, i figured out i reversed wrong, it is the get_user_label function.
ii indicator-session 12.10.5+14.04.20140410-0ubuntu1 amd64 indicator showing session management, status and user switching
ii indicator-session-dbgsym 12.10.5+14.04.20140410-0ubuntu1 amd64 debug symbols for package indicator-session
(gdb) bt
#0 get_user_label (user=0xa02db0, user=0xa02db0) at /build/buildd/indicator-session-12.10.5+14.04.20140410/src/service.c:299
#1 get_current_real_name (self=0x831840) at /build/buildd/indicator-session-12.10.5+14.04.20140410/src/service.c:322
#2 action_state_for_header (self=self@entry=0x831910) at /build/buildd/indicator-session-12.10.5+14.04.20140410/src/service.c:179
#3 0x0000000000412c85 in update_header_action (self=0x831910) at /build/buildd/indicator-session-12.10.5+14.04.20140410/src/service.c:210
#4 rebuild_now (self=0x831910, sections=57) at /build/buildd/indicator-session-12.10.5+14.04.20140410/src/service.c:956
#5 0x0000000000412cb0 in rebuild_timeout_func (self=<optimized out>) at /build/buildd/indicator-session-12.10.5+14.04.20140410/src/service.c:993
#6 0x00007fb3e49d7703 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007fb3e49d6ce5 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8 0x00007fb3e49d7048 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9 0x00007fb3e49d730a in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x0000000000411a35 in main (argc=<optimized out>, argv=<optimized out>) at /build/buildd/indicator-session-12.10.5+14.04.20140410/src/main.c:62
(gdb) i args
user = 0xa02db0
user = 0xa02db0
(gdb) print *user
$1 = {is_current_user = 1, is_logged_in = 0, uid = 0, login_frequency = 0, user_name = 0x0, real_name = 0x0, icon_file = 0x0}
(gdb) disas get_user_label
after installing the version with debug symbols in trusty, i figured out i reversed wrong, it is the get_user_label function.
ii indicator-session 12.10.5+ 14.04.20140410- 0ubuntu1 amd64 indicator showing session management, status and user switching session- dbgsym 12.10.5+ 14.04.20140410- 0ubuntu1 amd64 debug symbols for package indicator-session
ii indicator-
(gdb) bt buildd/ indicator- session- 12.10.5+ 14.04.20140410/ src/service. c:299 real_name (self=0x831840) at /build/ buildd/ indicator- session- 12.10.5+ 14.04.20140410/ src/service. c:322 state_for_ header (self=self@ entry=0x831910) at /build/ buildd/ indicator- session- 12.10.5+ 14.04.20140410/ src/service. c:179 header_ action (self=0x831910) at /build/ buildd/ indicator- session- 12.10.5+ 14.04.20140410/ src/service. c:210 buildd/ indicator- session- 12.10.5+ 14.04.20140410/ src/service. c:956 timeout_ func (self=<optimized out>) at /build/ buildd/ indicator- session- 12.10.5+ 14.04.20140410/ src/service. c:993 64-linux- gnu/libglib- 2.0.so. 0 context_ dispatch () from /lib/x86_ 64-linux- gnu/libglib- 2.0.so. 0 64-linux- gnu/libglib- 2.0.so. 0 64-linux- gnu/libglib- 2.0.so. 0 buildd/ indicator- session- 12.10.5+ 14.04.20140410/ src/main. c:62
#0 get_user_label (user=0xa02db0, user=0xa02db0) at /build/
#1 get_current_
#2 action_
#3 0x0000000000412c85 in update_
#4 rebuild_now (self=0x831910, sections=57) at /build/
#5 0x0000000000412cb0 in rebuild_
#6 0x00007fb3e49d7703 in ?? () from /lib/x86_
#7 0x00007fb3e49d6ce5 in g_main_
#8 0x00007fb3e49d7048 in ?? () from /lib/x86_
#9 0x00007fb3e49d730a in g_main_loop_run () from /lib/x86_
#10 0x0000000000411a35 in main (argc=<optimized out>, argv=<optimized out>) at /build/
(gdb) i args
user = 0xa02db0
user = 0xa02db0
(gdb) print *user
$1 = {is_current_user = 1, is_logged_in = 0, uid = 0, login_frequency = 0, user_name = 0x0, real_name = 0x0, icon_file = 0x0}
(gdb) disas get_user_label
but user_name and real_name are BOTH NULL.