So, I'm not a C++ developer.  At all.

But I got annoyed that the latest ubuntu "upgrade" broke KRename.

It just segfaults.

So, I'm stumbling around.

Got a backtrace:

Program received signal SIGSEGV, Segmentation fault.
QBasicAtomicInt::ref (this=0x0) at /usr/include/qt4/QtCore/qatomic_x86_64.h:121
121                      : "memory");
(gdb) backtrace
#0  QBasicAtomicInt::ref (this=0x0) at
/usr/include/qt4/QtCore/qatomic_x86_64.h:121
#1  0x0000000000463c43 in __static_initialization_and_destruction_0
(__priority=65535, __initialize_p=1)
    at /home/Desktop/krename-4.0.7/src/plugin.cpp:22
#2  0x000000000048087d in __libc_csu_init ()
#3  0x00007ffff488c2a0 in __libc_start_main (main=0x41bcd0 <main(int,
char**)>, argc=1, ubp_av=0x7fffffffe108,
    init=0x480820 <__libc_csu_init>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7fffffffe0f8)
    at libc-start.c:185
#4  0x000000000041e491 in _start ()


The line of code at plugin.cpp:22 is:

const QString Plugin::S_TOKEN_SEPARATOR = TokenHelpDialog::S_TOKEN_SEPARATOR;

TokenHelpDialog::S_TOKEN_SEPARATOR is defined as:

const QString TokenHelpDialog::S_TOKEN_SEPARATOR = ";;";

in tokenHelpDialog.cpp

If I modify the line where the segfault occurs to :

const QString Plugin::S_TOKEN_SEPARATOR = ";;";

And compile it, it runs with out a segfault.

What obvious thing am I missing about how C++ works?

Thanks,

Dan